Creación de una base de datos. Migración a SQL Server

  • Por
Vemos como crear una base de datos en WebMatrix y como migrar a SQL Server.
Iniciaremos WebMatrix y seleccionaremos crear un nuevo proyecto basándonos en una plantilla (Template)

Dentro de las plantillas disponibles escogeremos Sitio vacío (Inglés), le daremos el nombre de MercadoDelAutomovil (optamos por obviar el acento) y haremos clic sobre el botón OK.

Inicialmente nos encontraremos en la vista de Site. Hagamos clic sobre Databases y pasemos a visualizar el panel de Databases. Inicialmente, como cabría esperar, no existe ninguna en nuestro proyecto, sólo veremos la referencia de la entrada de nuestro proyecto (MercadoDelAutomovil, en éste caso) y Other Connections, seleccionemos, si no lo estuviera ya, la referencia de nuestro proyecto.

Para crear una nueva base de datos tenemos dos posibilidades:

  • En el área de la derecha, haciendo clic sobre Add a database to your site.
  • Hacer clic sobre el botón New Database en la pestaña Home.

De cualquiera de las formas, aparecerá una referencia de la nueva base de datos, con el mismo nombre que el proyecto; le cambiaremos el nombre a Ventas-2010-01-06 y pulsaremos la tecla Retorno.

El siguiente paso es definir la estructura de la base de datos. Esencialmente se trata de crear sus tablas y el contenido de los registros (campos o filas).

Nuevamente tenemos dos posibilidades:

  • Hacer doble clic sobre el nombre de la base de datos para mostrar la entrada Tables. Posteriormente hacer clic con el botón derecho del ratón sobre Tables y seleccionar New Table.
  • Posicionarnos sobre la entrada Tables, haciendo clic sobre ella y posteriormente hacer clic sobre el botón New Table en la pestaña Home.

De cualquiera de las dos maneras, nos aparecerá en el panel de la derecha una gradilla de entrada de datos para especificar tanto su nombre como los nombres de los campos, como sus propiedades. En nuestro caso rellenaremos lo que sigue:

  • Como nombre de la tabla, Primer_Semestre.
  • Una primera columna denominada Marca, de tipo nvarchar (50), es decir, que admitirá caracteres nacionales de una longitud máxima de 50. Dejamos el Defaulf Value como Null, y la marcamos como Primary Key.
  • Una segunda columna denominada Ventas, de tipo int.
Finalmente, saldremos guardando, bien haciendo clic sobre el icono correspondiente en la barra de título o pulsando Ctrl+S.

Finalmente veremos la referencia de la nueva tabla bajo el epígrafe Tables en el árbol de la base de datos anteriormente creada, como se aprecia en la figura adjunta.

Nota: Una vez definida la estructura de una tabla, podremos alterarla, bien seleccionándola en el árbol de bases de datos, pulsando con el botón izquierdo del ratón y escogiendo Definition; bien haciendo clic sobre el botón Definitión en la pestaña Table.

Si deseamos introducir ya los datos en la tabla podremos hacerlo seguidamente.

Esta vez tenemos tres posibilidades:

  • Hacer doble clic sobre la entrada Tables para mostrar la entrada las diversas tablas existentes. Posteriormente hacer clic con el botón derecho del ratón sobre la tabla en la cual queremos agregar datos y seleccionar Data.
  • Posicionarnos sobre el nombre la tabla (haciendo clic sobre ella) y finalmente hacer clic sobre el botón Data la pestaña Table.
  • Hacer doble clic sobre el nombre de la tabla.

Se nos mostrará la gradilla de la tabla, inicialmente vacía. Allí escribiremos los siguientes valores (para nuestro ejemplo):

MarcaVentas
SEAT64340
Volkswagen61020
Peugeot59999
Renault58012
Citroën57959
Ford55877
Opel50690
Toyota34059
Audi28435
Nissan27762

Si ahora hacemos clic sobre Files y desplegamos la nueva carpeta creada automáticamente, App_Data, veremos la referencia del archivo de la base de datos que acabamos de crear. (Si no es visible, púlsese con el botón derecha del ratón sobre el nombre del proyecto y hágase clic sobre Refresh).

Nota: Antes de proseguir, vamos a guardar una copia de la base de datos creada, con el fin de utilizarla en posteriores proyectos. Para ello, copiaremos el archivo de la base de datos, haciendo clic con el botón derecho del ratón sobre él y seleccionando Copy y lo pegaremos, por ejemplo, en la carpeta Documentos, a la que se accede seleccionando en el Escritorio de Windows InicioDocumentos

Con esto habremos finalizado nuestro trabajo de creación de una base de datos SQL. Pero aun podremos desear dar un último paso, su migración.

La migración a SQL Server implica la publicación de la base e datos en el servidor SQL que tengamos instalado. Por tanto, es condición necesaria que así sea; con WebMatrix al menos podemos disponer de SQL Server Express.

Los pasos a seguir son muy sencillos:

  • Hacer clic sobre Databases para ir a la vista de dicho panel.
  • Seleccionar, haciendo clic sobre, la base de datos que queramos migrar, en nuestro caso Ventas-2010-01-06.sdf.
  • Hacer clic sobre el botón Migrate, en la pestaña Home.
  • Se abrirá la caja de diálogo MIgrate Database, como se ve en la figura adjunta.

Normalmente bastará con rellenar lo que se aprecia en la figura y proseguir haciendo clic sobre el botón OK.

A menos que tengamos instalado SQL Server 2008 o que deseemos algún tipo de protección especial por contraseñas para el acceso a nuestra base de datos. Deberá consultarse, en tal caso, al administrado del sistema.

Tras unos instantes, desaparecerá la caja de diálogo y si todo ha ido bien, estaremos de vuelta en el panel Databases y en la parte inferior se nos mostrará lainformación de que todo ha ido bien. La migración ha terminado.

Aun hay algo más que considerar, después de migrar la base de datos también cambia la propia aplicación. Esta pasa a ser una conexión a la base de datos migrada (véase el ejemplo posterior correspondiente para más detalles) y la base de datos deja de estar como tal en la carpeta App_Data, pasando a denominarse, en nuestro ejemplo, Ventas-2010-01-06.sdf.old. Es decir que queda simplemente como una copia de respaldo sin funcionalidad y que podremos guardar, mantener en su lugar o, sin más, borrar.

Autor

Jaime Peña Tresancos

Escritor. Colaborador habitual de revistas de tecnología y experto en nuevas tecnologías y programas Microsoft

Compartir