Compartir a través de


Crear una base de datos

por Microsoft

Descargar PDF

Este es el paso 2 de un tutorial de la aplicación "NerdDinner" gratuito que le guía durante el proceso de compilación de una aplicación web pequeña, pero completa, con ASP.NET MVC 1.

En el paso 2 se muestran los pasos para crear la base de datos con todos los datos de comidas y confirmación de asistencia o RSVP para nuestra aplicación NerdDinner.

Si utiliza ASP.NET MVC 3, le recomendamos que siga los tutoriales Introducción a MVC 3 o Tienda de música de MVC.

NerdDinner Paso 2: Creación de la base de datos

Usaremos una base de datos para almacenar todos los datos de cenas y RSVP para nuestra aplicación NerdDinner.

Los pasos siguientes muestran cómo crear la base de datos mediante la edición gratuita de SQL Server Express (que se instala fácilmente mediante la versión V2 del instalador de plataforma web de Microsoft). Todo el código que escribiremos funciona tanto con SQL Server Express como con SQL Server completo.

Creación de una nueva base de datos de SQL Server Express

Comenzaremos haciendo clic con el botón derecho en nuestro proyecto web y seleccionando el comando de menú Agregar->Nuevo elemento:

Screenshot of the Solution Explorer dialog. Add is selected and New Item is highlighted.

Se abrirá el cuadro de diálogo "Agregar nuevo elemento" de Visual Studio. Filtraremos por la categoría "Datos" y seleccionaremos la plantilla de elemento "Base de datos de SQL Server":

Screenshot of the Visual Studio Add New Item dialog. S Q L Server database is highlighted. Data is highlighted.

Le asignaremos el nombre a la base de datos de SQL Server Express que queremos crear "NerdDinner.mdf" y presionaremos aceptar. Visual Studio nos preguntará si queremos agregar este archivo a nuestro directorio \App_Data (que es un directorio que ya está configurado con listas de control de acceso con seguridad de lectura y escritura):

Screenshot of the Microsoft Visual Studio dialog. Yes is highlighted.

Haremos clic en "Sí", se creará la base de datos y se agregará a nuestro Explorador de soluciones:

Screenshot of the Solution Explorer navigation tree. Nerd Dinner dot m d f is highlighted and selected.

Creación de tablas en nuestra base de datos

Ahora tenemos una nueva base de datos vacía. Vamos a agregarle algunas tablas.

Para ello, navegaremos a la ventana de pestaña "Explorador de servidores" de Visual Studio, lo que nos permite administrar bases de datos y servidores. Las bases de datos de SQL Server Express almacenadas en la carpeta \App_Data de la aplicación se mostrarán automáticamente en el Explorador de servidores. Opcionalmente, podemos usar el icono "Conectar con base de datos" en la parte superior de la ventana "Explorador de servidores" para agregar también bases de datos de SQL Server adicionales (tanto locales como remotas) a la lista:

Screenshot of the Server Explorer navigation tree. Data connections is expanded and Nerd Dinner dot m d f is highlighted.

Agregaremos dos tablas a nuestra base de datos NerdDinner: una para almacenar nuestras comidas y la otra para realizar un seguimiento de sus aceptaciones de RSVP. Para crear nuevas tablas, haremos clic con el botón derecho en la carpeta "Tablas" de nuestra base de datos y elegiremos el comando de menú "Agregar nueva tabla":

Screenshot of the Server Explorer navigation tree. Tables is expanded and highlighted. Add New Table is highlighted.

Se abrirá un diseñador de tablas que nos permitirá configurar el esquema de la tabla. Para nuestra tabla "Comidas", agregaremos 10 columnas de datos:

Screenshot of the Nerd Dinner dialog box. The schema of the table is shown.

Queremos que la columna "DinnerID" sea una clave principal única para la tabla. Para configurarlo, haremos clic con el botón derecho en la columna "DinnerID" y elegiremos el elemento de menú "Establecer clave principal":

Screenshot of the Dinner ID menu items. The Set Primary Key menu item is highlighted.

Además de hacer que DinnerID sea una clave principal, también queremos configurarla como columna "identity" cuyo valor se incremente automáticamente a medida que se agreguen nuevas filas de datos a la tabla (lo que significa que la primera fila de Comida insertada tendrá un DinnerID de 1, la segunda, de 2, etc.).

Para ello, seleccionaremos la columna "DinnerID" y usaremos el editor "Propiedades de columna" para establecer la propiedad "(Is Identity)" de la columna en "Sí". Usaremos los valores predeterminados de identidad estándar (comienzan por 1 e incrementan una unidad en cada nueva fila de comida):

Screenshot of the Column Properties tab. Identity Specification is highlighted.

A continuación, guardaremos nuestra tabla escribiendo Ctrl-S o usando el comando de menú Archivo->Guardar. Esto nos pedirá que le asignemos un nombre a la tabla. Le asignaremos el nombre "Comidas":

Screenshot of the Choose Name dialog. Dinners is written in the Enter a name for the table box.

Nuestra nueva tabla Comidas se mostrará en nuestra base de datos en el explorador de servidores.

A continuación, repetiremos los pasos anteriores y crearemos una tabla "RSVP". Esta tabla con tiene tres columnas. Configuraremos la columna RsvpID como clave principal y también la convertiremos en una columna de identidad:

Screenshot of the Nerd Dinner dialog. R S V P I D is highlighted in the Column name category.

La guardaremos y le asignaremos el nombre "RSVP".

Configuración de una relación de clave externa entre tablas

Ahora tenemos dos tablas dentro de nuestra base de datos. Nuestro último paso de diseño de esquema será configurar una relación "uno a varios" entre estas dos tablas, de modo que podamos asociar cada fila Comida con cero o más filas RSVP que se apliquen a ella. Para ello, configuraremos la columna "DinnerID" de la tabla RSVP para tener una relación de clave externa con la columna "DinnerID" de la tabla "Comidas".

Para ello, abriremos la tabla RSVP en el diseñador de tablas haciendo doble clic en ella en el Explorador de servidores. A continuación, seleccionaremos en ella la columna "DinnerID", haremos clic con el botón derecho y elegiremos el comando de menú contextual "Relaciones...":

Screenshot of the Dinner I D menu items. Relationships is highlighted.

Se abrirá un cuadro de diálogo donde podrá configurar las relaciones entre tablas:

Screenshot of the Foreign Key Relationships dialog box.

Haremos clic en el botón "Agregar" para agregar una nueva relación al cuadro de diálogo. Una vez agregada la relación, expandiremos el nodo de vista de árbol "Tablas y especificación de columna" dentro de la cuadrícula de propiedades a la derecha del cuadro de diálogo y haremos clic en el botón "..." situado a su derecha:

Screenshot of the Foreign Key Relationships dialog box. Tables and Columns Specifications is highlighted. An arrow is pointing to the elipses button to the right of it.

Al hacer clic en el botón "..." se abrirá otro cuadro de diálogo para poder especificar qué tablas y columnas intervienen en la relación, así como para asignarle un nombre a la relación.

Cambiaremos la tabla de clave principal para que sea "Comidas" y seleccionaremos la columna "DinnerID" dentro de la tabla Comidas como clave principal. Nuestra tabla RSVP será la tabla de clave externa y la columna RSVP.DinnerID se asociará como clave externa:

Screenshot of the Tables and Columns dialog. Primary Key Table and Foreign key table are highlighted.

Ahora cada fila de la tabla RSVP se asociará a una fila de la tabla Comida. SQL Server nos mantendrá la integridad referencial y nos impedirá agregar una nueva fila RSVP si no apunta a una fila de comida válida. También nos impedirá eliminar una fila de comida si todavía hay filas RSVP que hacen referencia a ella.

Incorporación de datos a nuestras tablas

Vamos a terminar agregando algunos datos de ejemplo a nuestra tabla Comidas. Para agregar datos a una tabla, haremos clic con el botón derecho en ella en el Explorador de servidores y elegiremos el comando "Mostrar datos de tabla":

Screenshot of Server Explorer. Show Table Data is highlighted.

Agregaremos algunas filas de datos de Comida que podemos usar más adelante a medida que empecemos a implementar la aplicación:

Screenshot of the Dinner data within Microsoft Visual Studio.

siguiente paso

Hemos terminado de crear nuestra base de datos. Ahora vamos a crear clases de modelo para consultarla y actualizarla.