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
´Indice.
1 Introducci´on Pg.3
2 Realizaci´on de la pr´actica.4
3 Conclusi´ones Pg.13
2
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
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
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
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
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
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
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
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
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
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
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

Practica4

  • 1.
    Instituto Polit´ecnico Nacional EscuelaSuperior 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
  • 2.
    ´Indice. 1 Introducci´on Pg.3 2Realizaci´on de la pr´actica.4 3 Conclusi´ones Pg.13 2
  • 3.
    Introducci´on. Nuestras bases dedatos 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 lapr´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 siguientescorreos 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 nuestratabla 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 vernustra 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 TablaSET 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 laconsulta 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 queactualizar 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 laconsulta 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 diagramadel 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´acticarepasamos 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