Tutorial: Diseño de una base de datos relacional en Azure SQL Database con SSMS

Azure SQL Database es una base de datos como servicio (DBaaS) relacional en Microsoft Cloud (Azure). En este tutorial, aprenderá a usar Azure Portal y SQL Server Management Studio (SSMS) para:

  • Crear una base de datos única mediante Azure Portal*
  • Configurar una regla de firewall por IP de nivel de servidor mediante Azure Portal
  • Conectarse a la base de datos con SSMS
  • Crear tablas con SSMS
  • Carga masiva de datos con BCP
  • Consulta de datos con SSMS

Sugerencia

El siguiente módulo de Microsoft Learn le ayuda a aprender gratis 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.

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:

  • SQL Server Management Studio (la versión más reciente)
  • BCP y SQLCMD (la versión más reciente)

Inicio de sesión en Azure Portal

Inicie sesión en Azure Portal.

Creación de una base de datos en blanco en Azure SQL Database

Se crea una base de datos en Azure SQL Database con un conjunto definido de recursos de proceso y almacenamiento. La base de datos se crea dentro de un grupo de recursos de Azure y se administra mediante un servidor SQL lógico.

Siga estos pasos para crear una base de datos en blanco.

1. En el menú de Azure Portal o en la página principal , seleccione Crear un recurso .

2. En la página Nuevo , seleccione Bases de datos en la sección de Microsoft Azure Marketplace y, a continuación, haga clic en SQL Database en la sección Destacados .

3. Rellene el formulario de SQL Database con la siguiente información, como se muestra en la imagen anterior:

Configuración

Nombre de la base de datos

Suscripción

Grupos de recursos

Seleccionar origen     
Valor sugerido

yourDatabase


yourSubscription

yourResourceGroup

Base de datos en blanco
Descripción

Para conocer los nombres de base de datos válidos, consulte Identificadores de base de datos


Para más información acerca de sus suscripciones, consulte Suscripciones.

Para conocer cuáles son los nombres de grupo de recursos válidos, consulte el artículo Convenciones de nomenclatura.
Especifica que se debe crear una base de datos en blanco.


4. Haga clic en Servidor para usar un servidor existente o cree y configure un servidor nuevo. Seleccione un servidor existente o haga clic en Crear un nuevo servidor y rellene el formulario Nuevo servidor con la información siguiente:

Configuración


Nombre del servidor    



Inicio de sesión del administrador del servidor

Contraseña



Ubicación 
Valor sugerido      

Cualquier nombre globalmente único

Cualquier nombre válido


Cualquier contraseña válida

Cualquier ubicación válida
Descripción


Para conocer cuáles son los nombres de servidor válidos, consulte el artículo Naming conventions (Convenciones de nomenclatura).



Para conocer los nombres de inicio de sesión válidos, consulte Identificadores de base de datos.



La contraseña debe tener un mínimo de ocho caracteres y debe usar caracteres de tres de las siguientes categorías: caracteres en mayúsculas, caracteres en minúsculas, números y caracteres no alfanuméricos.

Para obtener información acerca de las regiones, consulte Regiones de Azure.

5. Haga clic en Seleccionar .

6. Haga clic en Plan de tarifa para especificar el nivel de servicio, el número de DTU o de núcleos virtuales y la cantidad de almacenamiento. Puede explorar las opciones del número de DTU o núcleos virtuales, y la cantidad de almacenamiento que están a su disposición para cada nivel de servicio.Después de seleccionar el nivel de servicio, el número de DTU o núcleos virtuales y la cantidad de almacenamiento, haga clic en Aplicar .

7. Introduzca una intercalación para la base de datos en blanco (para este tutorial, use el valor predeterminado). Para más información sobre las intercalaciones, vea Collations (Intercalaciones)

8. Una vez completado el formulario de SQL Database , haga clic en Crear para aprovisionar la base de datos. Esta operación puede tardar unos minutos.

9. En la barra de herramientas, haga clic en Notificaciones para supervisar el proceso de implementación.

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.

1. 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.

2. 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.

3. Copie el nombre completo del servidor para conectarse a su servidor y a sus bases de datos de SQL Server Management Studio.

4. Haga clic en Establecer el firewall del servidor en la barra de herramientas. Se abrirá la página Configuración del firewall del servidor.

5. Haga clic en Agregar IP de cliente en la barra de herramientas para agregar la dirección IP actual a la nueva regla de firewall por IP. La regla de firewall de IP puede abrir el puerto 1433 para una única dirección IP o un intervalo de direcciones IP.

6. Haga clic en Save (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.

7. Haga clic en 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. Haga clic en OFF en esta página para deshabilitar todos los servicios de Azure.

Conectarse a la base de datos

Use SQL Server Management Studio para establecer una conexión con la base de datos.

1. Abra SQL Server Management Studio.

2. En el cuadro de diálogo Conectar con el servidor , especifique la siguiente información:

Configuración

Tipo de servidor

Nombre del servidor

Autenticación


Inicio de sesión

Contraseña      
Valor sugerido

Motor de Base de Datos


Nombre completo del servidor


Autenticación de SQL Server


La cuenta de administrador del servidor

La contraseña de la cuenta de administrador del servidor
Descripción

Este valor es necesario.


Por ejemplo, yourserver.database.windows.net .


Autenticación de SQL es el único tipo de autenticación que hemos configurado en este tutorial.

Es la cuenta que especificó cuando creó el servidor.

Es la contraseña que especificó cuando creó el servidor.

3. Haga clic en Opciones en el cuadro de diálogo Conectar con el servidor . En la sección Conectar con base de datos , escriba yourDatabase para conectarse a esta base de datos.

4. Haga clic en Conectar . Se abre la ventana del Explorador de objetos en SSMS.

5. 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.

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 Transact-SQL:

  • Person
  • Curso
  • Estudiante
  • Créditos

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 eficaces, vea Creación de tablas de base de datos eficaces. Para obtener información sobre cómo elegir tipos de datos, vea Data types (Tipos de datos).

Nota

También puede usar el Diseñador de tablas de SQL Server Management Studio para crear y diseñar las tablas.

1. 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.

2. En la ventana de consulta, ejecute la consulta siguiente para crear cuatro tablas en la base de datos:

SQL

-- 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
    )
)

3. Expanda el nodo Tablas en yourDatabase en el Explorador de objetos de SQL Server Management Studio para ver las tablas que ha creado.

Carga de datos en las tablas

1. Cree una carpeta denominada sampleData en la carpeta Descargas para almacenar datos de ejemplo para la base de datos.

2. Haga clic con el botón derecho en los vínculos siguientes y guárdelos en la carpeta sampleData .

  • SampleCourseData
  • SamplePersonData
  • SampleStudentData
  • SampleCreditData

3. Abra una ventana del símbolo del sistema y navegue hasta la carpeta sampleData .

4. Ejecute los comandos 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.

cmd

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 para recuperar información de las tablas de base de datos. Vea Writing SQL Queries (Escribir consultas SQL) para más información sobre cómo escribir consultas SQL. La primera consulta combina las cuatro tablas para buscar los alumnos del profesor "Dominick Pope" que tienen una calificación superior al 75 %. La segunda consulta combina las cuatro tablas y busca los cursos en los que nunca se ha matriculado "Noe Coleman".

1. En una ventana de consulta de SQL Server Management Studio, ejecute la siguiente consulta.

SQL

-- 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

2. Ejecute la siguiente consulta en una ventana de consulta:

SQL

-- 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'

Pasos siguientes

En este tutorial, ha aprendido muchas tareas de base de datos básicas. Ha aprendido a:

  • Crear una base de datos única mediante Azure Portal*
  • Configurar una regla de firewall por IP de nivel de servidor mediante Azure Portal
  • Conectarse a la base de datos con SSMS
  • Crear tablas con SSMS
  • Carga masiva de datos con BCP
  • Consulta de datos con SSMS