jueves, 2 de febrero de 2012

Creación de base de datos y tablas con SQL Server 2008

En esta entrega realizaremos la creación de la base de datos para la Terminal de Autobuses. Existen dos formas de crear la base de datos y las tablas en SQL Server, una es gráficamente y la otra mediante código, cabe resaltar que en este manual nos centraremos en cómo crear cada una de las actividades que necesitamos, pero no pretendemos explicar los diferentes tipos de utilización del código de SQL Server llamado Transact-SQL.



Forma Grafica:

La creación de una base de datos de forma grafica es de la siguiente manera:

Iniciamos el SQL Server Management Studio para abrir el manejador de base de datos.















En la conexión simplemente nos conectamos con Autentificación de Windows y el nombre del servidor que tiene predeterminado, y presionamos el botón de conectar.













Nos posicionamos en la parte izquierda en la zona del Explorador de Objetos, seleccionamos  la carpeta de Bases de datos, pulsamos con el botón derecho del Mouse > Nueva base de datos.





En la pantalla que nos aparecerá para configurar la base de datos, en el Nombre de Base de datos escribimos TerminalAutobuses, para este proyecto la configuración de la base de datos la dejamos de manera predeterminada, para no meternos en mas descripción que no es el objetivo de este tutorial.



Bueno como vemos la base de datos ya esta creada en la carpeta de Bases de datos.





Lo siguiente que haremos será crear tablas. Existen demasiadas formas de diseñar una base de datos dependiendo las necesidades, lógica del sistema y el diseñador. Para nuestro proyecto nos basaremos en un diseño, el cual se recomienda que se siga para llevar la continuidad de todo el tutorial o si ya tienen experiencia en la programación pueden hacer su propio diseño.


Para nuestra base de datos las tablas serán las siguientes:

Autobuses
Nombre de columna
Tipo de dato/Tamaño
Valores nulos/llave
idAutobus
nvarchar 50
No Null (llave Primaria)
numAsientos
int
No Null
marca
nvarchar 50
No Null
modelo
nvarchar 50
No Null
fechaAdquisicion
datetime
No Null

Boletos

idBoleto
nvarhar 50
No Null (llave Primaria)
idCorrida
nvarhar 50
No Null
lugarDestino
nvarhar 50
No Null
lugarSalida
nvarhar 50
No Null
nombCliente
nvarhar 50
Null
edad
Int
No Null
idVenta
nvarhar 50
No Null
fechaSalida
Datetime
No Null
precio
Money
No Null
clase
nvarhar 50
No Null
numAsiento
int
No Null
idAutobus
nvarhar 50
No Null
idSucursal
nvarhar 50
No Null

Cajas

idCaja
nvarchar 50
No Null (llave Primaria)
idSucursal
nvarchar 50
No Null
abierta
Bit
No Null

Cancelaciones

idBoleto
nvarchar 50
No Null (llave Primaria)
importe
Money
No Null
fechaCancelacion
Datetime
No Null
idCaja
nvarchar 50
No Null
nombUsuario
nvarchar 50
No Null

Choferes

idChofer
nvarchar 50
No Null (llave Primaria)
nombre
nvarchar 50
No Null
apellidoPaterno
nvarchar 50
No Null
apellidoMaterno
nvarchar 50
No Null
domicilio
nvarchar 50
No Null
cuidad
nvarchar 50
No Null
estado
nvarchar 50
No Null


Corridas

idCorrida
nvarchar 50
No Null (llave Primaria)
lugarDestino
nvarchar 50
No Null
LugarOrigen
nvarchar 50
No Null
FechaSalida
Date
No Null
HoraSalida
time(0)
No Null
idChofer
nvarchar 50
No Null
idAutobus
nvarchar 50
No Null
precioAdulto
Money
No Null
precioNiño
Money
No Null
precioMayor
Money
No Null
tipoServicio
nvarchar 50
No Null
idSucursal
nvarchar 50
No Null

Cortes

idCaja
nvarchar 50
No Null(llave Primaria)
nombUsuario
nvarchar 50
No Null
NumVentas
nvarchar 50
No Null
numCancelaciones
int
No Null
importeVentas
money
No Null
importeCancelaciones
money
No Null
efectivoTotal
money
No Null
fechaCorte
datetime
No Null


inicioCaja

idCaja
nvarchar 50
(llave Primaria)
idsucursal
nvarchar 50

nombUsuario
nvarchar 50

fechaApertura
Datetime

efectivoApertura
Money


Sucursales

idSucursal
nvarchar 50
No Null (llave Primaria)
nombSucursal
nvarchar 50
No Null
calleSuc
nvarchar 50
No Null
coloniaSuc
nvarchar 50
No Null
ciudadSuc
nvarchar 50
No Null
estadosuc
nvarchar 50
No Null

Usuarios

nombUsuario
nvarchar 50
No Null (llave Primaria)
contraseña
nvarchar 50
No Null
cuentaHabilitada
Bit
No Null
realizaVenta
Bit
No Null
realizaCancelacion
Bit
No Null
realizaCorte
Bit
No Null
administrador
Bit
No Null
fechaInicio
Datetime
No Null
cajaAsignada
nvarchar 50
No Null

Ventas

idVenta
nvarchar 50
No Null (llave Primaria)
nombUsuario
nvarchar 50
No Null
idCaja
nvarchar 50
No Null
importeVenta
Money
No Null
fechaVenta
Datetime
No Null
numBoletos
Int
No Null



 De forma grafica las tablas se crean de la siguiente manera:

Desplegamos la base de datos TerminalAutobuses en el ” + ” que tiene del lado izquierdo, seleccionamos la carpeta Tablas y con el botón derecho del Mouse > Nueva Tabla…





Después vamos llenando las tablas con los nombres de las columnas, el tipo de datos y si se permitirán valores nulos.




Para establecer la llave primaria en una columna se selecciona la columna y se da click con el botón derecho de mouse y seleccionar Establecer clave principal.



Una vez que terminamos crear las columnas y establecer la llave primaria, se guarda la tabla y se le asigna un nombre, damos click nuevamente con el botón derecho sobre la pestaña dbo.table  y seleccionamos Guardar Table.



Aquí elegimos el nombre que queremos darle a la tabla, así una por una vamos creando las tablas.



Mediante Código Transact-SQL
Primero crearemos la base de datos:

Abrimos una ventana de consulta, para esto presionamos el botón Nueva consulta.






En la ventana de consultas ingresamos los siguientes comandos;
CREATE DATABASE <<Nombre_de_la_base>> en nuestro caso el nombre sera TerminalAutobuses y después presionamos el botón Ejecutar.

La base de datos ya esta creada ahora vamos a crear las tablas. 



En la ventana de consulta borramos el código escrito y ahora escribimos los siguiente comandos para crear la tabla usuarios, Primero para hacer referencia a la base de datos que vamos a utilizar se escribe USE << Nombre_de_la_base >>  Se pueden escribir varias consultas en la misma ventana de consultas, para separar cada consulta se utiliza la palabra clave GO para que no generar un error,

Podemos escribir después de USE TerminalAutobuses  GO el código para crear la tabla o podemos ejecutar una por una cada instrucción, lo más recomendable es que se haga una por una ya que a veces se generan errores de código y es algo difícil identificar cuales comando se ejecutaron correctamente y cuáles no.

De la siguiente forma creamos una tabla mediante código Transact-SQL


CREATE TABLE <<Nombre_Tabla>>
( <Nombre_Columna1> <tipo_Dato(<tamaño>)> <valor_Nulo>
<Nombre_Columna2> <tipo_Dato(<tamaño>)> <valor_Nulo>
...)
GO

Un ejemplo para crear la tabla Autobuses seria de la siguiente manera, especificamos la llave primaria después del tipo y tamaño de dato, con la instrucción PRIMARY KEY :

CREATE TABLE Autobuses(
idAutobus nvarchar(50)PRIMARY KEY NOT NULL,
numAsientos int NOT NULL,
marca nvarchar(50) NULL,
modelo nvarchar(50) NULL,
fechaAdquisicion nvarchar(50) NULL
)
GO


Después solo presionamos el botón Ejecutar. Así crearemos cada una de las tablas hasta terminar con todas las tablas, esta es la forma de crear la base de datos mediante código Transact-SQL.



Y bien espero que esta primer tutorial de la primera entrega les ayude mucho para aprender a crear bases de datos y tablas fácilmente en SQL Server 2008, cualquier duda o sugerencia las pueden dejar en los comentarios y se las resuelvo con gusto, Gracias.

5 comentarios:

  1. gracias josue por su ayuda me sirvio - espero que asi nos siga apoyando cuando necesitemos

    ResponderEliminar
  2. me ayudo con las entidades gracias aunque tienes datos repetidos entre boletos y corridas

    ResponderEliminar
  3. Hola amigo, antes que nada te felicito por tu aportación. Muy buen trabajo que bienes desarrollando. Podras resubir el proyecto a otro servidor? pues ya no existe. Gracias.

    Y en hora buena por compartir.

    ResponderEliminar