sql >> Base de Datos >  >> RDS >> Sqlserver

Aprenda a diseñar bases de datos con SQL Server Management Studio (SSMS) – Parte 2

Es la segunda parte de la serie centrada en el uso de SQL Server Management Studio. Aprenderá los conceptos y problemas básicos del diseño de la base de datos y obtendrá un tutorial para diseñar una base de datos SQL simple con SSMS (SQL Server Management Studio).

Requisitos previos

  1. La edición Express/Developer de SQL Server 2016/2017/2019 está instalada.
  2. Está instalada la última versión de SSMS (SQL Server Management Studio).
  3. Los lectores tienen un conocimiento básico de las bases de datos SQL y las herramientas anteriores.
  4. Los conceptos básicos de diseño de bases de datos son claros.
  5. Los lectores están familiarizados con el escenario de diseño de Estudiante-Instructor discutido en la parte 1.

Consulte Aprender diseño de base de datos con SQL Server Management Studio SSMS Parte 1 para obtener más información sobre los requisitos anteriores.

Diseño de base de datos de estudiantes-instructores con SSMS

Comenzamos a crear nuestra base de datos SQL simple con la ayuda de SSMS. Sin embargo, es mejor tener un resumen de la base de datos planificada antes de comenzar a diseñarla.

Resumen de la base de datos de estudiantes e instructores

Hablamos de una base de datos simple que consta de las siguientes tres tablas:

  1. Estudiante . Esta tabla contiene registros pertenecientes a estudiantes.
  2. Instructor . Esta tabla almacena información sobre todos los instructores.
  3. Estudiante-Instructor . Este nos dice qué Instructor está asignado a qué estudiante.

Importante: se puede asignar más de un estudiante a un instructor, y se puede asignar más de un instructor a un estudiante (para diferentes materias).

En otras palabras, muchos estudiantes pueden tener muchos instructores.

Reemplazo de la tabla de estudiante-instructor con la tabla del curso

Permítanos refinar ligeramente la base de datos de estudiante-instructor:cambiaremos el nombre de la tabla de estudiante-instructor con la tabla del curso.

De esta forma, es más fácil comprender que cada curso puede tener varios estudiantes y que cada instructor puede tener varios estudiantes para el mismo curso.

Estamos planeando las siguientes columnas para estas tablas:

  1. Estudiante:StudentId, Nombre.
  2. Instructor:InstructorId, Nombre.
  3. Curso:CouseId, Nombre, StudentId, InstructorId.

Iniciar SSMS (SQL Server Management Studio)

Escriba SSMS en el cuadro de búsqueda de Windows y haga clic en él en la lista de resultados para iniciar el software:

Tenga en cuenta que verá la versión que ha instalado. En nuestro caso, es SSMS (SQL Server Management Studio) versión 18.0.

Conéctese al motor de base de datos de SQL Server

En el Explorador de objetos ventana, haga clic en Conectar y luego seleccione Motor de base de datos :

Seleccione el nombre del servidor (el nombre del servidor SQL que ha instalado en su máquina). Conéctese al motor de base de datos según su configuración predeterminada. En nuestro caso, usamos el modo de autenticación de Windows:

Crear una nueva base de datos SQL de StudentInstructor

Una vez conectado, haga clic con el botón derecho en Bases de datos nodo en el Explorador de objetos y haga clic en Nueva base de datos... como se muestra a continuación:

Escriba el nombre de la base de datos StudentInstructor . Haga clic en Aceptar, dejando la configuración predeterminada, a menos que tenga que cambiarla:

La base de datos debe crearse ahora.

Ampliar las mismas Bases de datos nodo para localizarlo:

Crear una tabla de estudiantes

Ahora necesitamos crear las tablas en la base de datos StudentInstructor.

Expandir StudentInstructor nodo de base de datos:haga clic en él y luego haga clic con el botón derecho en Tablas.

Ir a Nuevo -> Tabla… de la siguiente manera:

Vamos a agregar columnas a la tabla una por una. Empezamos con StudentId .

Escriba el StudentId nombre de la columna y seleccione int Tipo de datos, ya que será numérico (solo con números):

Establecer clave principal

El ID de estudiante la columna también será la clave principal de la tabla. Nos ayudará a identificar a un estudiante (fila/registro) de forma única.

Haga clic derecho en la flecha que apunta al StudentId columna y haga clic en Establecer clave principal :

Agregar identidad a la clave principal (StudentId)

Una identidad establecida en una columna incrementa automáticamente su valor cuando se insertan nuevos registros. Es como un número de serie, que aumenta con cada nuevo registro.

Si no configuramos la columna de clave principal como una columna de identidad, agregamos manualmente la ID para cada nuevo registro. Esto, es una buena idea configurarlo.

Por ejemplo, el primer registro insertado en la tabla Student tendrá una identificación automática 1, y el siguiente será StudentId 2, etc. Es si configuramos la Identidad.

Desplácese hacia abajo en las Propiedades de la columna ventana una vez que el StudentId se selecciona la columna de clave principal hasta que encuentre la Especificación de identidad propiedad.

Establezca la especificación de identidad de la siguiente manera (comenzando con es identidad) :

Especificación de identidad :Sí
(es Identidad) :Sí
Incremento de identidad :1
Semilla de identidad :1

Agregue una columna de nombre a la tabla de estudiantes

A continuación, agregue otra columna:Nombre a la mesa. Usa varchar(45) Tipo de datos y desmarque Permitir valores nulos de la siguiente manera:

Recuerda que VARCHAR(45) representa los datos de caracteres (tipo) hasta 45 caracteres que se almacenarán en la columna (Nombre). Cuando desmarcamos Permitir nulos , debemos proporcionar este valor a la columna para guardar un Estudiante grabar.

Guardar la Tabla (Estudiante)

El paso más importante es guardar los cambios. En nuestro caso, guardamos la tabla recién creada simplemente haciendo clic en Guardar icono de disco en la barra de herramientas o mediante el método abreviado de teclado CTRL+S .

Escriba el nombre de la tabla:Estudiante – al guardarlo:

Ver la tabla de estudiantes (Explorador de objetos)

Una vez que la tabla se guardó correctamente, expanda las Tablas nodo del StudentInstructor base de datos para localizar la tabla recién creada:

Cree una tabla de instructor con Id. de instructor y columnas de nombre

Del mismo modo, haga clic derecho en las Tablas nodo de nuevo. Esta vez, cree una nueva tabla llamada Instructor .

Luego, agregue una nueva columna llamada InstructorId de int tipo de datos y configúrelo como la clave principal como se muestra a continuación:

El siguiente paso es agregar Identidad a la columna InstructorId :

Después de esto, agregue el Nombre columna de VARCHAR(45) tipo de datos al Instructor Tabla, y no permita Nulos para esta columna, al igual que para el Nombre columna del Estudiante tabla:

Guardar y ver una tabla de instructor (Explorador de objetos)

Guarde la tabla presionando CTRL+S acceso directo o haciendo clic en el icono Guardar. Nombra la mesa como Instructor .

Haga clic derecho en las Tablas nodo debajo de StudentInstructor base de datos y haga clic en Actualizar para ver ambas tablas ahora:

Cree la tabla del curso con la columna de clave principal CourseId con identidad

Tenemos que agregar una tabla más a la base de datos:el Curso tabla, que contendrá los identificadores de las tablas de Estudiante e Instructor. Habrá una relación de muchos a muchos (muchos estudiantes pueden asignarse a muchos instructores, según nuestros requisitos).

Crear una nueva tabla Curso con el ID del curso clave principal:

Agregue Identidad a la columna de la misma manera que lo hicimos para StudentId y ID del instructor columnas.

Agregar columnas de nombre, Id. de estudiante y Id. de curso

A continuación, agregue un Nombre columna de tipo VARCHAR(45) al Curso seguido de agregar StudentId y ID del curso columnas de int tipo de datos:

No olvide desmarcar Permitir valores nulos para asegurarse de que no se guarde un registro sin ingresar estos valores de columna.

De esta manera, nos aseguramos de que a Curso debe tener un estudiante y un instructor antes de que se pueda guardar en la base de datos. Además de eso, el estudiante y Instructor debe existir en sus tablas originales.

Guardar y comprobar rápidamente

Guarde la tabla y el nombre es como Curso:

Finalmente, Actualizar todas las tablas y ver la tabla recién creada junto con otras en el Explorador de objetos :

Agregar todas las tablas al diagrama de la base de datos

Ahora, necesitamos crear una relación entre las tablas para que tanto Estudiante y Instructor las mesas se conectaron al Curso tabla a través de sus claves principales.

Por ejemplo, IdEstudiante en el Estudiante la tabla está conectada con StudentId en el Curso mesa. Del mismo modo, InstructorId en el Instructor la tabla está conectada con InstructorId en el Curso mesa.

Podemos lograrlo con el diagrama de la base de datos.

Vaya a StudentInstructor base de datos en el Explorador de objetos y haga clic derecho en Diagramas de base de datos -> Nuevo diagrama de base de datos :

Haz clic en :

Usa el CTRL tecla para seleccionar todas las tablas existentes y agregarlas al Diagrama de la base de datos :

Vea el diagrama de la base de datos y reorganice las tablas (haga clic en la tabla y muévala) para hacer el Curso soporte de mesa en el medio, entre el Estudiante y Instructor tablas:

Vincular la tabla de estudiantes con la tabla del curso

Necesitamos crear una relación entre Estudiante y Curso conectando StudentId en el Estudiante tabla con el StudentId columna en el Curso mesa.

Arrastre la clave StudentId y suéltelo en la columna StudentId en la tabla de cursos . Haz clic en Aceptar :

Creará una relación de clave externa entre las tablas de Curso y Estudiante:garantiza que solo los estudiantes guardados en la tabla de Estudiante se guardarán en la tabla de Curso:

Vincular la tabla del instructor con la tabla del curso

Del mismo modo, debe vincular el Instructor mesa con el Curso tabla para que el InstructorId columna de clave principal del Instructor la tabla se pasaría a InstructorId en el Curso mesa.

De esta forma, nos aseguramos de que el InstructorId la clave principal existe como una clave externa en el Curso mesa. Significa que podemos almacenar cualquier instructor fila del Curso tabla solo si ese Instructor existe en el Instructor original mesa. De esta forma, mantenemos la consistencia e integridad de la base de datos según la práctica habitual.

Guardar el diagrama de la base de datos

Finalmente, guarde el diagrama de la base de datos haciendo clic en Guardar icono en la barra de herramientas:

Agregar datos a la tabla de estudiantes

Es hora de agregar algunos datos a las tablas creadas, comenzando desde la tabla de Estudiantes. Agregaremos los registros de tres estudiantes a la tabla.

Haga clic derecho en el Estudiante y haga clic en Editar las 200 primeras filas (no te preocupes, no vas a editar 200 filas):

Escriba los siguientes nombres y haga clic en Introducir para guardar estos registros:

Luego, cierre la ventana:haga clic en la cruz en la parte superior derecha o presione CTRL+F4.

Tenga en cuenta que los StudentIds 1, 2 y 3 se asignan automáticamente a los registros. Los usaremos más adelante en el Curso mesa.

Añadir datos a la Tabla de Instructores

Ahora, necesitamos agregar dos instructores llamados Martin y Asad . Por lo tanto, agregue los siguientes datos al Instructor tabla:

Del mismo modo, tenga en cuenta estos ID 1 y 2. Puede cerrar esta ventana por ahora.

Agregar datos a la tabla del curso

Tenemos estudiantes de un lado e instructores del otro lado. Pero solo podemos agregar aquellos estudiantes que ya están en la tabla de estudiantes, y lo mismo se aplica a los instructores.

Inscribamos a los tres estudiantes en las Bases de datos curso y asigne un instructor a este Curso también:

Ver el contenido de la tabla del curso

Para ver los datos, haga clic derecho en el Curso tabla -> Seleccione las 1000 filas principales:

¡Felicidades! Ha aprendido con éxito a diseñar una base de datos simple con SSMS (SQL Server Management Studio). Además, nos hemos capacitado para insertar nuevos registros y ver los datos insertados.

Cosas que hacer

Ahora que puede diseñar una base de datos con SSMS, intente lo siguiente para mejorar aún más sus habilidades:

  1. Intente ver el contenido de las tablas de estudiantes e instructores.
  2. Intente agregar otro curso llamado Inteligencia empresarial e inscriba a los tres estudiantes en ese curso, junto con la asignación del instructor Asad (InstructorId:2)
  3. Recuerde que puede mejorar el diseño real de la base de datos del artículo de la siguiente manera:
    • Renombrar el Curso tabla como la Clase mesa;
    • Eliminar el nombre columna de la Clase mesa;
    • Reemplazo del ID del curso con el ClassId columna;
    • Crear un Curso separado tabla con las columnas CourseId y Name, al igual que para las tablas Student e Instructor;
    • Agregar un nuevo ID de curso columna a la tabla Class y vinculando CourseId del Curso Tabla con el CourseId columna en la Clase table, al igual que Student e Instructor.