Ejemplo de creación de Base de Datos A continuación vamos a crear una base de datos que vamos a utilizar como repositorio de información para los capítulos que siguen de ASP .NET. Considere que esta misma información es válida para utilizarse con aplicaciones Windows. 1. Pulse sobre el botón de Inicio de Windows y pulse sobre la opción Todos los programas, Microsoft SQL Server 2005, SQL Server Management Studio. 2. Autentíquese mediante el de Windows y Pulse Conectar, tal como se observa en la figura 12-01.
Fig. 12-01 Accediendo SQL Server Express 2005 3. Una vez en el vamos a crear una nueva base de datos pulsando sobre la carpeta Bases de datos, tal como se observa en la figura 12-02.
1
Fig. 12-02 Creando nuestra base de datos 4. El nombre de la base de datos será dbBancos. Debe asignarle un propietario a dicha base de datos, tal y como se muestra en la figura 12-03. Busque su propio nombre como del equipo.
Fig. 12-03 Asignando un propietario a nuestra base de datos. 5. Una vez que hemos creado nuestra base de datos procederemos a crear las tablas, relaciones y procedimientos almacenados que necesitaremos en nuestra aplicación Web. En la figura 12-04 puedes observar los objetos de la base de datos (tablas para la creación de archivos de datos,
2
vistas para crear vistas de datos y programación donde crearemos nuestros procedimientos almacenados)
Fig. 12-04 objetos de nuestra base de datos. 6. Pulsando con el botón derecho del mouse procederemos a crear las tablas que requeriremos para nuestra aplicación Web. Iniciaremos creando la tabla tbClientes la cual almacenará los datos correspondientes a los clientes del banco. Los detalles se anotan en la tabla 10-01. Observe ícono llave, la cual estandarizaremos como el campo de la tabla que representa la llave principal (primary Key) de la tabla.
Tabla 12-01 Configuración de la tabla tbClientes Nombre campo
Tipo
Longitud
¿Nulos?
ClienteID
Char
10
No
Apellidos Nombre Direccion Telefono Email
Varchar Varchar Varchar Varchar Varchar Varchar
100 50 100 15 20 15
No No No No Si No
7. A continuación vamos a crear la tabla tbCuentas la cual almacenará los datos pertenecientes a cada cliente del banco. En la tabla 12-02 se especifican los datos de esta tabla:
3
Tabla 12-02 Configuración de la tabla tbCuentas Nombre campo CuentaID ClienteID Fecha_Apertura Fecha_Clausura Monto_Apertura Saldo
Tipo
Longitud
¿Nulos?
Char
10
No
Char DateTime DateTime Numeric Numeric
10 10,2 10,2
No No SI NO NO
8. La siguiente tabla a diseñar es la de los tipos de movimientos que se puedan realizar en el banco, esto es Créditos y Débitos. La tabla se denominará tbTipoMovimientos. La tabla 12-03 detalla los campos que la conforman:
Tabla 12-03 Configuración de la tabla tbTipoMovimientos Nombre campo
Tipo
Longitud
¿Nulos?
TipoMovID
Char
2
No
Descripcion
Varchar
30
No
9. Ahora diseñaremos la tabla tbClaseMovimientos. conforman:
La tabla 12-04 detalla los campos que la
Tabla 12-04 Configuración de la tabla tbClaseMovimientos Nombre campo
Tipo
Longitud
¿Nulos?
ClaseMovID
Char
2
No
Descripcion
Varchar
30
No
10. La clase tbOperacion es la que continúa en nuestro diseño. Observa la tabla 12-05 para detalles:
Tabla 12-05 Configuración de la tabla tbOperaciones Nombre campo OperacionID ClienteID ClaseMovID Fecha_Operacion Monto_Operacion Detalle_Operacion Fecha_Pago
Tipo
Longitud
¿Nulos?
Int
-
NO
Char
10
No
Char DateTime Numeric Varchar(50) DateTime
2 10,2 50 -
No NO NO SI SI
11. La tabla tbTransferencias nos servirá para almacenar los datos de las transferencias de fondos que haga un cliente a una cuenta de la base de datos tbCuentas. El formato de esta tabla se muestra en la tabla 12-06. 4
Tabla 12-06 Configuración de la tabla tbTransferencias Nombre campo
Tipo
Longitud
¿Nulos?
CuentaIDOrigen
Char
10
NO
CuentaIDDestino
Char
10
No
Char Char Numeric DateTime
10 10 10,2 -
No NO NO NO
ClienteIDOrigen ClienteIDDestino Monto_Transferencia Fecha_Transferencia
12. Otra tabla que vamos a diseñar es tbTipoServicios que permitirá registrar el tipo de servicios que el banco ofrece una plataforma de pagos. Los tipos de servicios son: agua, luz, teléfono, televisión por cable, etc. El diseño de este archivo se muestra en la tabla 12-07.
Tabla 12-07 Configuración de la tabla tbTipoServicios Nombre campo TipoServicioID Descripcion
Tipo
Longitud
¿Nulos?
Char
2
NO
Varchar
50
NO
13. La tabla tbServiciosPublicos es un archivo que almacena los registros de documentos que el cliente podrá cancelar en el banco mediante el sitio Web. Estos son recibos de agua, electricidad, servicio de televisión por cable, etc. No tiene un módulo de mantenimiento en el sitio dado que se implementa un proceso de actualización mediante un archivo XML o ASCII. Este archivo tiene contiene los campos que se indican en la tabla 12-08.
Tabla 12-08 Configuración de la tabla tbServiciosPublicos Nombre campo
Tipo
Longitud
¿Nulos?
Char
10
NO
Fecha
DateTime
-
NO
Monto_Pagar Fecha_Pago ClaseMovID TipoServicioID
Decimal DateTime Char Char
10,2 2 2
NO SI NO NO
DocumentoID
14. Finalmente, diseñemos la tabla tbMovimientos donde se registrarán todos los movimientos que podrá realizar un cliente en el banco. La tabla 12-09 establece los detalles:
5
Tabla 12-09 Configuración de la tabla tbMovimientos Nombre campo MovimientoID OperacionID TipoMovID ClaseMovID CuentaID ClienteID Fecha_Movimiento Monto_Movimiento Detalle_Movimiento
Tipo
Longitud
¿Nulos?
Int
-
No
Int Char Char Char Char DateTime Numeric Varchar(50)
2 2 10 10 10,2 50
NO No No NO NO NO NO SI
15. Ya tenemos las tablas básicas que necesitamos para nuestro sitio Web. Vamos ahora a crear el diagrama de integridad referencial que nos permitirá mantener la integridad de nuestra base de datos. Para ello pulsa con el botón derecho del mouse sobre la opción Diagramas de bases de datos que se encuentra justamente encima de la opción de creación de tablas que has venido utilizando hasta este momento. Selecciona la opción Nuevo diagrama de bases de datos. Aparecerá un cuadro de diálogo donde te solicitará agregar las tablas que recientemente diseñaste. Agrégalas todas y pulsa el botón Cerrar. Las relaciones a establecer se muestran en la tabla 12-10.
Tabla 12-10 Relaciones de la base de datos Tabla origen tbCuentas tbOperaciones tbClientes tbTipoMovimientos tbClaseMovimientos
Campo origen
Tabla destino
CuentaID
tbMovimientos
Campo destino CuentaID
OperacionID ClienteID TipoMovID TipoMovID
tbMovimientos tbMovimientos tbMovimientos tbMovimientos
OperacionID ClienteID TipoMovID TipoMovID
Tipo relación 1..* 1..1 1..* 1..* 1..*
16. Para establecer la relación tienes que pulsar sobre el nombre de un campo de una tabla (por ejemplo el campo ClienteID de la tabla tbClientes) y manteniendo presionado el botón del mouse arrastrarlo hasta el campo de la tabla con la cual deseas establecer la relación (por ejemplo el campo ClienteID de la tabla tbCuentas) Observa la figura 12-05 del diagrama de relaciones terminado para que procedas a establecer las relaciones que se indican en la tabla 12-10.
6
Fig. 12-05 diagrama de relaciones de nuestra base de datos. Agreguemos algunos datos de prueba en la tabla tbClientes. Para ello posiciona el cursor en la tabla tbClientes y pulsa Abrir Tabla. Tendrás la opción de agregar los registros que se muestran en la tabla 12-11.
Tabla 12-11 Ingreso registros en tbClientes
ClienteID
Apellidos
Nombre
Dirección
Telefono
Email
123
Gómez Jiménez
José Enrique
La Cruz, Gte.
123
[email protected]
123
456
Gómez Jiménez
José Carlos
La Cruz, Gte.
456
[email protected]
456
789
Gómez Jiménez
Gabriela
Grecia, Alajuela
789
[email protected]
789
7