Professional Documents
Culture Documents
Objetivos:
Crear indicies y manejar la restricciones de estos
Recursos:
SQL SERVER 2012 Guas de prctica.
Introduccin:
Para el manejo de bases de datos relacionales debo de manejar las restricciones necesarias para poder enlazar las tablas y ordenar los datos.
INDICES (INDEX)
Un ndice es una estructura de disco asociada con una tabla o una vista que acelera la recuperacin de filas de la tabla o de la vista. Un ndice contiene claves generadas a partir de una o varias columnas de la tabla o la vista. Dichas claves estn almacenadas en una estructura (rbol b) que permite que SQL Server busque de forma rpida y eficiente la fila o filas asociadas a los valores de cada clave.
INICIO DE LA PRCTICA
Empezaremos creando la base de datos empresa1, de la forma que ya aprendimos y a continuacin crearemos la tabla ubicacion la cual segn lo aprendido anteriormente la obtendra as
Ahora vamos a crear un llave primaria, utilizando click derecho sobre el campo idubicacion, se nos desplegara un men y seleccionamos Set Primary Key.
Entonces aparecer una llave a la par del campo idubicacion lo que significa es llave primaria (PK), la cual solo puede haber una en la tabla
Como ltimo paso vas hacer que el campo idubicacion sea auto numrico, sea que pondr nmeros en correlativo automticamente, para hacer esto, utilizaremos las opciones debajo del diseo de la tabla, ocuparemos la pestaa Identity Specification, exploraremos la opcin y seleccionaremos (is identity) la cual por default esta en NO, la podremos en SI, usado la opcin al final de la lnea, una vez activado podremos poner con qu nmero empieza y los incrementos, las opciones por default en ambas son de 1.
Ahora guardo la tabla con el nombre de ubicacin y agrego 5 registros, los cuales deben ser nombre de ciudades, no necesita llenar el campo idubicacion l lo har automticamente.. Como siguiente paso creemos la tabla pago, realizando el mismo proceso, creando idpago como llave primaria, y haciendo que este campo sea auto numrico, y agregando los siguientes cuatro registro: contado, crdito, tarjeta crdito, consignacin. Seguiremos creando la siguiente tabla que es proveedor segn el diagrama, crearemos como llave primaria idproveedor y la haremos auto numrico, lo cual nos quedara as.
CREACION DE INDICES
Para poder hacer relaciones necesitamos crear llaves forneas (FK), estas debe estar indexadas, para mejor control y uso, para esto daremos click sobre el campo idubicacion y seleccionaremos Indices o Claves.
Posteriormente en la pestaa General opcin Columns, selecciono el botn que tiene tres puntos, para seleccionar el campo que quiero indexar.
En la siguiente pantalla debo de seleccionar la columna o campo que quiero indexar y adems selecciono si quiero hacerlo de forma ascendente o descendente.
Ahora presiono ok y me voy a la pestaa identity y a la opcin (name) y le cambio nombre, el cual puede ser el mismo del campo idubicacion o uno distinto pero representativo.
Una vez terminado el proceso, puedo salirme tomando la opcin Close, o puedo aadir otro index presionando Add, haga el mismo el proceso para indexar el campo idpago.
CREACION DE RELACIONES
Abriremos en diseo la tabla proveedores seleccione cualquier campo y presiono click derecho, y en las opciones ocupo Relaciones.
En la pantalla de relaciones seleccione la opcin Add para agregar un relacin entre el campo proveedor.idubicaion con el campo ubicacion.idubicaion.
En la pestaa General seleccione la opcin Tables And Columns Specific y despus seleccione el botn al final de la fila que tiene tres puntos.
Una vez en esa pantalla seleccione las tablas y los compas que desea relacionar y coloque el nombre de la relacin, para el ejemplo yo considere rela_idubicacion, pero usted puede personalizar el nombre, una vez terminado presione ok
Una vez terminado este proceso presione Close para salir o Add para agregar otro. Repita este procedimiento para crear la relacin proveedor.idpago con pago.idpago.
CREACION DE DIAGRAMAS
Una opcin de ver el resultado de nuestra creacin es elaborando un diagrama de base de datos, para lo cual expandimos la base de datos empresa1, seleccionamos Database Diagrams presionamos click derecho y seleccionamos New Database Diagram.
Nos va a mostrar un pantalla con todas tablas de la base de datos, con el mouse seleccionamos todos y presionamos la opcin Add, o tambin podemos hacerlo una a una, y posteriormente presionamos Close.
Ordenamos un poco las pantallas y podremos observar que hemos podido lograr el requerimiento puesto al principio de la prctica.
MODO CONSOLA
Haremos el mismo esquema de base de datos, solo que le cambiaremos nombre a la base de datos a empresa2, ponemos crear utilizando el siguiente querry (consulta).
CREATE DATABASE empresa113 GO USE empresa113 GO CREATE TABLE ubicacion (idubicacion INT IDENTITY(1,1), descrip varchar(45), CONSTRAINT idubicacion PRIMARY KEY(idubicacion)) GO CREATE TABLE pago (idpago INT IDENTITY(1,1), descrip varchar(45), CONSTRAINT idpago PRIMARY KEY(idpago)) GO CREATE TABLE proveedor (idproveedor INT IDENTITY(1,1), nombre varchar(45), idubicacion int, idpago int, CONSTRAINT idproveedor PRIMARY KEY(idproveedor), CONSTRAINT rela_idubicacion FOREIGN KEY(idubicacion) REFERENCES ubicacion(idubicacion), CONSTRAINT rela_idpago FOREIGN KEY (idpago) REFERENCES pago(idpago)) GO
Ejercicios: Cree consulta para crear la base de datos empresa3, utilizando ALTER TABLE. Verifique la entrada de datos de las tablas indexadas. Cree una nueva base de datos que incluya 4 tablas relacionadas. Elabore diagramas de todos los ejemplos. Investigue el uso de CHECK Realice ejercicios adicionales que su instructor lo solicite.