Tutorial: Diseño de una base de datos relacional en Azure SQL Database con Azure Data Studio (ADS)
Se aplica a: Azure SQL Database
Azure SQL Database es una base de datos como servicio (DBaaS) relacional en Microsoft Cloud (Azure). En este tutorial se aprenderá a usar Azure Portal y Azure Data Studio (ADS) para:
- Conectarse a la base de datos mediante Azure Data Studio
- Crear tablas con Azure Data Studio
- Carga masiva de datos con BCP
- Consultar datos con Azure Data Studio
Nota:
Para este tutorial, se utiliza Azure SQL Database. También puede usar una base de datos agrupada en un grupo elástico o una instancia administrada de SQL. Para la conectividad con una instancia administrada de SQL, consulte estos artículos de inicio rápido sobre Instancia administrada de SQL: Inicio rápido: Configuración de una máquina virtual de Azure para una instancia administrada de Azure SQL e Inicio rápido: Configuración de una conexión de punto a sitio a una instancia administrada de Azure SQL desde el entorno local.
Requisitos previos
Para completar este tutorial, asegúrese de que tiene instalados los siguientes elementos:
- Azure Data Studio (última versión)
- BCP y SQLCMD (la versión más reciente).
- Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
- Si aún no tiene una instancia de Azure SQL Database creada, visite Inicio rápido: Creación de una base de datos única. Busque la opción de usar la oferta para probar Azure SQL Database de forma gratuita (versión preliminar).
Inicio de sesión en Azure Portal
Inicie sesión en Azure Portal.
Creación de una regla de firewall de IP de nivel de servidor
Azure SQL Database crea un firewall de IP en el nivel de servidor. Este firewall evita que las herramientas y aplicaciones externas se conecten al servidor o a las bases de datos de este, a menos que una regla de firewall permita sus direcciones IP. Para habilitar la conectividad externa a la base de datos, primero debe agregar una regla de firewall para la dirección IP (o un intervalo de direcciones IP). Siga estos pasos para crear una regla de firewall de IP de nivel de servidor.
Importante
Azure SQL Database se comunica a través del puerto 1433. Si intenta conectarse a este servicio desde dentro de una red corporativa, es posible que el firewall de la red no permita el tráfico de salida a través del puerto 1433. En ese caso, no puede conectarse a la base de datos, salvo que el administrador abra el puerto 1433.
Una vez finalizada la implementación, seleccione Bases de datos SQL en el menú de Azure Portal o busque y seleccione Bases de datos SQL desde cualquier página.
Seleccione yourDatabase en la página Bases de datos SQL. Se abre la página de información general de la base de datos, que muestra el nombre del servidor (por ejemplo,
contosodatabaseserver01.database.windows.net
) y proporciona opciones para otras configuraciones.Copie el nombre completo del servidor para conectarse a su servidor y a sus bases de datos de SQL Server Management Studio.
Seleccione Redes en Configuración. Elija la pestaña Acceso público y, después, seleccione Redes seleccionadas en Public network access (Acceso a la red pública) para mostrar la sección Reglas de firewall.
Haga clic en Add your client IPv4 (Agregar IPv4 de cliente) en la barra de herramientas para agregar la dirección IP actual a la nueva regla de firewall de IP. La regla de firewall de IP puede abrir el puerto 1433 para una única dirección IP o un intervalo de direcciones IP.
Seleccione Guardar. Se crea una regla de firewall de IP en el nivel de servidor para el puerto 1433 de la dirección IP actual en el servidor.
Seleccione Aceptar y después cierre la página Configuración de firewall.
Ahora la dirección IP puede pasar a través del firewall de IP; además, puede conectarse a la base de datos mediante SQL Server Management Studio u otra herramienta que elija. Asegúrese de usar la cuenta de administración de servidor que creó anteriormente.
Importante
De forma predeterminada, el acceso a través del firewall por IP de SQL Database está habilitado para todos los servicios de Azure. Seleccione DESACTIVAR en esta página para deshabilitar todos los servicios de Azure.
Conectarse a la base de datos
Use Azure Data Studio para establecer una conexión con la base de datos.
Abra Azure Data Studio.
En la nueva conexión del Explorador de objetos para crear una nueva conexión y escribir la siguiente información. Deje el resto de opciones con los valores predeterminados.
Configuración Valor sugerido Descripción Tipo de conexión Microsoft SQL Server Este valor es necesario. Nombre del servidor El nombre completo del servidor lógico de Azure SQL Database Por ejemplo, your_logical_azure_sql_server.database.windows.net
.Tipo de autenticación SQL Server Authentication Utilice la autenticación de SQL Server para escribir un nombre de usuario y una contraseña. Autenticación de Microsoft Entra Para conectarse con Microsoft Entra ID, si es el administrador del servidor de Microsoft Entra, seleccione Microsoft Entra ID - Universal compatible con MFA. Para obtener más información, consulte Configuración y administración de la autenticación de Microsoft Entra con Azure SQL. Inicio de sesión La cuenta de administrador del servidor Es la cuenta que especificó cuando creó el servidor. Contraseña La contraseña de la cuenta de administrador del servidor Es la contraseña que especificó cuando creó el servidor. Seleccione Conectar. Se abre la ventana del Explorador de objetos en ADS.
En el Explorador de objetos, expanda Bases de datos y, después, expanda yourDatabase para ver los objetos de la base de datos de ejemplo.
En el Explorador de objetos, haga clic con el botón derecho en yourDatabase y seleccione Nueva consulta. Se abre una ventana de consulta en blanco que está conectada a la base de datos.
Creación de tablas en la base de datos
Cree un esquema de base de datos con cuatro tablas que modelan un sistema de administración de estudiantes para universidades con el Diseñador de tablas en Azure Data Studio:
Person
Course
Student
Credit
En el diagrama siguiente se muestra cómo estas tablas se relacionan entre sí. Algunas de estas tablas hacen referencia a columnas de otras tablas. Por ejemplo, la tabla Student
hace referencia a la columna PersonId
de la tabla Person
. Estudie el diagrama para entender cómo se relacionan las tablas de este tutorial entre sí. Para obtener información detallada sobre cómo crear tablas de base de datos normalizadas eficaces, consulte Diseño de una base de datos normalizada. Para obtener información sobre cómo elegir tipos de datos, vea Data types (Tipos de datos). De forma predeterminada, las tablas se crean en el esquema predeterminado dbo
, lo que significa que el nombre de dos partes de una tabla será dbo.Person
, por ejemplo.
En el Explorador de objetos, seleccione yourDatabase, que expandirá el menú desplegable de todos los procesos almacenados en esta base de datos, haga clic con el botón derecho en la carpeta Tablas y seleccione Nueva tabla. Se abre un Diseñador de tablas en blanco que está conectado a la base de datos.
Use la interfaz del Diseñador de tablas para crear estas cuatro tablas en la base de datos. Para más información sobre cómo crear tablas mediante el Diseñador de tablas, consulte la documentación sobre el Diseñador de tablas:
Tabla Person
Asegúrese de configurar la configuración de la clave principal para la tabla Person como se muestra más abajo:
Tabla de alumnos
Asegúrese de configurar las opciones de clave principal para la tabla Student, como se muestra a continuación:
Asegúrese de configurar las opciones de clave externa para la tabla Student, como se muestra a continuación:
Tabla de cursos
Asegúrese de configurar las opciones de clave principal para la tabla Course, como se muestra a continuación:
Tabla de crédito
Asegúrese de configurar las opciones de clave externa para la tabla Credit, como se muestra a continuación:
Asegúrese de configurar las opciones de restricción CHECK para la tabla Credit, como se muestra a continuación:
Si prefiere usar T-SQL para crear las cuatro tablas nuevas, este es el T-SQL que se ejecutará en una nueva ventana de consulta.
-- Create Person table CREATE TABLE Person ( PersonId INT IDENTITY PRIMARY KEY, FirstName NVARCHAR(128) NOT NULL, MiddelInitial NVARCHAR(10), LastName NVARCHAR(128) NOT NULL, DateOfBirth DATE NOT NULL ) -- Create Student table CREATE TABLE Student ( StudentId INT IDENTITY PRIMARY KEY, PersonId INT REFERENCES Person (PersonId), Email NVARCHAR(256) ) -- Create Course table CREATE TABLE Course ( CourseId INT IDENTITY PRIMARY KEY, Name NVARCHAR(50) NOT NULL, Teacher NVARCHAR(256) NOT NULL ) -- Create Credit table CREATE TABLE Credit ( StudentId INT REFERENCES Student (StudentId), CourseId INT REFERENCES Course (CourseId), Grade DECIMAL(5,2) CHECK (Grade <= 100.00), Attempt TINYINT, CONSTRAINT [UQ_studentgrades] UNIQUE CLUSTERED ( StudentId, CourseId, Grade, Attempt ) )
Expanda el nodo Tablas en yourDatabase en el Explorador de objetos para ver las cuatro tablas nuevas que ha creado.
Carga de datos en las tablas
Cree una carpeta denominada sampleData en la carpeta Descargas de la estación de trabajo local para almacenar datos de ejemplo para la base de datos. Por ejemplo,
c:\Users\<your user name>\Downloads
.Haga clic con el botón derecho en los vínculos siguientes y guárdelos en la carpeta sampleData.
Abra una nueva ventana del símbolo del sistema de Windows y navegue hasta la carpeta sampleData. Por ejemplo,
cd c:\Users\<your user name>\Downloads
.Ejecute los comandos
bcp
siguientes para insertar datos de ejemplo en las tablas y reemplace los valores de server, database, user y password por los valores correspondientes al entorno.bcp Course in SampleCourseData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t "," bcp Person in SamplePersonData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t "," bcp Student in SampleStudentData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t "," bcp Credit in SampleCreditData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t ","
De esta forma, ya ha cargado los datos de ejemplo en las tablas que ha creado anteriormente.
Consultar datos
Ejecute las siguientes consultas T-SQL para recuperar información de las tablas de base de datos.
Esta primera consulta combina las cuatro tablas para buscar los alumnos del profesor "Dominick Pope" que tienen una calificación superior al 75 %. Ejecute la siguiente consulta T-SQL en una ventana de consulta:
-- Find the students taught by Dominick Pope who have a grade higher than 75%
SELECT person.FirstName, person.LastName, course.Name, credit.Grade
FROM Person AS person
INNER JOIN Student AS student ON person.PersonId = student.PersonId
INNER JOIN Credit AS credit ON student.StudentId = credit.StudentId
INNER JOIN Course AS course ON credit.CourseId = course.courseId
WHERE course.Teacher = 'Dominick Pope'
AND Grade > 75;
Esta consulta combina las cuatro tablas y busca los cursos en los que nunca se ha matriculado "Noe Coleman". Ejecute la siguiente consulta T-SQL en una ventana de consulta:
-- Find all the courses in which Noe Coleman has ever enrolled
SELECT course.Name, course.Teacher, credit.Grade
FROM Course AS course
INNER JOIN Credit AS credit ON credit.CourseId = course.CourseId
INNER JOIN Student AS student ON student.StudentId = credit.StudentId
INNER JOIN Person AS person ON person.PersonId = student.PersonId
WHERE person.FirstName = 'Noe'
AND person.LastName = 'Coleman';
Sugerencia
Para obtener más información sobre cómo escribir consultas SQL, visite Tutorial: Escritura de instrucciones Transact-SQL.
Contenido relacionado
- Tutorial: Diseño de una base de datos relacional en Azure SQL Database
- Probar Azure SQL Database gratis (vista previa)
- Novedades de Azure SQL Database
- Configuración y administración de la referencia de contenido: Azure SQL Database
- Planeamiento y administración de los costos de Azure SQL Database
Sugerencia
¿Está listo para empezar a desarrollar una aplicación .NET? El siguiente módulo gratuito de Microsoft Learn le enseña cómo Desarrollar y configurar una aplicación de ASP.NET que consulta una instancia de Azure SQL Database, incluida la creación de una base de datos simple.
Paso siguiente
Avance hasta el próximo tutorial para obtener información sobre cómo diseñar una base de datos mediante Visual Studio y C#.