1. Instituto Polit´ecnico Nacional
Escuela Superior de Computo
Bases de Datos
Pr´actica 4
Alumno:
Jos´e Ricardo P´erez P´erez
Profesora:
M. en C. Idalia Maldonado Castillo
Grupo:
2CV7
04 de marzo del 2013
3. Introducci´on.
Nuestras bases de datos continuamente crecer´an por lo tanto su informaci´on
cambiar´a y a veces los tipos de datos con los que trabajan tambi´en. Como
nuestras bases de datos se ir´an actualizando a veces las modificaciones a
nievel estructura no son muy recomendables ya que puede que haya conflictos
con los tipos de datos existentes y los que se quieran ingresar despues. Las
relaci´ones de nuestras tablas en nuestras bases de datos tambien cambiar´a,
aunque en lo personal es un poco deficiente hacer cambios posteriormente al
dise˜no y la creacion de nuestra base de datos en las relaciones es algo que
se debe de saber hacer, desde nuestra GUI de nuestro SGBD o como una
consulta estableciendo nuestras llaves primarias y llaves foraneas.
3
4. Realizaci´on de la pr´actica 4.
Para nuestra pr´actica 4 tuvimos que importar todos los datos de nuestra
pr´actica 3 para poder asi agregar nuevos datos y manipular los ya existentes.
Instrucciones: Realizar los siguientes puntos usando comandos de SQL.
1)Agregar a la tabla EMPLEADO una columna que se llame EmailEm-
pleado como varchar(25) y que acepte valores nulo.
Para poder agregar una columna nueva a nuestra tabla EMPLEADO uti-
lizamos la consulta:
ALTER TABLE EMPLEADO ADD EmailEmpleado varchar(25) NULL;
Como podemos ver nustra columna de correos esta agregada, y como no
tiene ningun correo alguno de nuestros almacenes (hasta ahora) podemos ver
que dice NULL ya que definimos que se aceptaran valores NULL.
4
5. 2)Asignar los siguientes correos a la tabla EMPLEADO a sus respectivos
numero de empleado.
Para poder agregar los nuevos datos en nuestra nueva columna como se
nos indica tendremos que actualizar la nueva columna, para ello utilizaremos
la consulta:
UPDATE Nombre Tabla SET Nombre Columna = valornuevo WHERE
condici´on
5
6. Al consultar nuestra tabla EMPLEADO podemos ver que se agregaron
nuestros nuevos datos segun la condicion requerida, vemos tambien que se
respetan los valores NULL a los e-mail que no se les agrego alg´un correo.
3)Definir NumEmpleado como llave primaria de la tabla EMPLEADO.
Para poder definir una columna de alguna de nuestras tablas como Pro-
mary Key debemos de escribir la siguiente consulta
ALTER TABLE Nombre Tabla ADD PRIMARY KEY (campo);
4)Agregar a la tabla EMPLEADO una columna que se llame IdAlmacen
que sea int y acepte valores NULL.
Para poder agregar una columna nueva a nuestra tabla EMPLEADO uti-
lizamos la consulta:
ALTER TABLE EMPLEADO ADD IdAlmacen int NULL;
6
7. Como podemos ver nustra columna de identificaciones de almacen esta
agregada, y como no tiene ningun Id de nuestro almacen (hasta ahora) pode-
mos ver que dice NULL ya que definimos que se aceptaran valores NULL.
5)Asignar los siguientes valores IdAlmacen a sus respectivos numero de em-
pleados.
Para poder agregar los nuevos datos en nuestra nueva columna como se
nos indica tendremos que actualizar la nueva columna, para ello utilizaremos
la consulta:
7
8. UPDATE Nombre Tabla SET Nombre Columna = valornuevo WHERE
condici´on
Al consultar nuestra tabla EMPLEADO podemos ver que se agregaron
nuestros nuevos datos segun la condicion requerida.
6)Cambiar el tipo de dato EmailEmpleado a varchar(50) y que acepte val-
ores nulo.
Para cambiar el tipo de dato de alguna columna de una tabla tendremos
que utilizar la siguiente consulta.
ALTER TABLE nombre Tabla ALTER COLUMN nombre Columna tipo
Dato NULL/NOT NULL;
8
9. Al utilizar la consulta exec sp help ’nombre Tabla’; podemos visualizar
como est´a compuesta nuestra tabla, los datos que contiene , as´ı como los
tipos de datos con los que funciona cada columna;en nuestro caso utilizamos
dicha consulta para poder visualizar los cambios del tipo de datos de nuestra
tabla EMPLEADO en la columna EmailEmpleado.
7)Asignar los siguientes correos a la tabla EMPLEADO.
Para poder agregar los nuevos datos en nuestra nueva columna como se nos
9
10. indica tendremos que actualizar la nueva columna, para ello utilizaremos la
consulta:
UPDATE Nombre Tabla SET Nombre Columna = valornuevo WHERE
condici´on
En este caso nuestra tabla es EMPLEADO, y a nuestra columna EmailEm-
pleado agregaremos los correos segun nuestra condici´on que es el NumEm-
pleado espec´ıfico.
Al consultar nuestra tabla EMPLEADO podemos ver que se agregaron
nuestros nuevos datos segun la condicion requerida.
8)Cambiar el tipo de dato IdAlmacen a que no acepte valores nulos (se
mantiene el tipo de dato como int).
Para cambiar el tipo de dato de alguna columna de una tabla tendremos
que utilizar la siguiente consulta.
ALTER TABLE nombre Tabla ALTER COLUMN nombre Columna tipo
Dato NULL/NOT NULL;
10
11. Al utilizar la consulta exec sp help ’nombre Tabla’; podemos visualizar
como est´a compuesta nuestra tabla, los datos que contiene , as´ı como los
tipos de datos con los que funciona cada columna;en nuestro caso utilizamos
dicha consulta para poder visualizar los cambios del tipo de datos de nuestra
tabla EMPLEADO en la columna IdAlmacen. Como los valores int se deben
conservar no debemos conservar el tipo de dato como el anterior, y como ya
no aceptara valores NULL entonces el tipo de dato que se acepte cambiara
de NULL a NOT NULL.
9)Definir la columna IdAlmacen de la tabla EMPLEADO como llave for´anea
que hace referencia a la tabla ALMACEN y al campo NumAlmacen.
Para definir a una de nuestras columnas como una llave for´anea de alguna
tabla y que haga referencia a otra columna de otra tabla utilizaremos la
siguiente consulta.
ALTER TABLE nombre Tabla ADD CONSTRAINT
FK nombreTabla1 nombreTabla2 FOREIGN KEY (campo Tabla1)
REFERENCES ALMACEN (campo Tabla2);
11
12. 10)Visualizar el diagrama del esquema de la base para ver que se efectuaron
los cambios de la llave for´anea correctamente.
Finalmente damos click en Nuevo Diagrama de Datos de nuestra base de
dato para visualizarla y podremos ver las relaci´ones que se encuentran en
nuestras tablas. Podemos ver que columnas son llaves for´aneas y llaves pri-
marias, asi como la nueva llave for´anea que acabamos de agregar.
12
13. Conclusi´ones.
En esta pr´actica repasamos nuevamente como implementar datos de nuestra
base de datos anterior y poder importarlas a una nueva para poder traba-
jar con sus datos. Aplicamos nuevamente consultas para cambiar tipos de
datos de alguna columna y como agregarlos, tambien como establecer llaves
foraneas y primarias en alguna columna de nuestra tabla como una consulta.
Aunque no es algo muy complejo se debe de tomar en cuenta que nuestras
llaves primarias y foraneas ya hayan sido establecidas antes de poder traba-
jar con ellas desde consultas por que nos puede llevar a algunos errores al
momento de querer establecer llaves primarias o foraneas como consulta.
13