Está en la página 1de 16

Laboratorio de Base de Datos

07 Manipulacin de datos

I.

II.

Nro. DD-106
Pgina 1 de 16

OBJETIVOS

Insertar registros en una tabla existente.


Actualizar y eliminar registros de una tabla.
Trabajar con transacciones en una base de datos.
Cancelar modificaciones realizadas en una transaccin.

SEGURIDAD
Advertencia:
En este laboratorio est prohibida la manipulacin del
hardware, conexiones elctricas o de red; as como la
ingestin de alimentos o bebidas.

III.

RECURSOS

IV.

DESARROLLO DE LA TAREA

V.

Equipo con sistema operativo Windows XP Professional.


Oracle Express Universal 10g.

El desarrollo del laboratorio es de manera individual.

PROCEDIMIENTO COMMIT
A. Conectarse a la base de datos. Utilizar el usuario REGIS
B. Insertar 2 registros a la tabla AREA empleando la sentencia SQL INSERT INTO anote los comandos
SQL empleados:

C. Insertar 2 registros a la tabla CARGO empleando la sentencia SQL INSERT INTO anote los comandos
SQL empleados:

D. Insertar 2 registros a la tabla TRABAJADOR empleando la sentencia SQL INSERT INTO anote los
comandos SQL empleados:

E. Empleando la sentencia SQL SELECT verifique la existencia de los nuevos registros adicionados
F. Solicite a alguno de sus compaeros que se conecte al esquema de su base de datos REGIS a travs de
la red o en su defecto realice conexin con el usuario System a la Base de Datos

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 2 de 16

G. Su compaero o con el usuario system, empleando la sentencia SQL SELECT, visualizar el contenido de
las tablas AREA, CARGO y TRABAJADOR e indique si puede obtener como resultado los registros
que acaba de adicionar en los pasos B, C y D. Indique si se pueden ver los nuevos registros y explique
el resultado obtenido:

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 3 de 16

H. Grabe de manera permanente los registros adicionados en la base de datos empleando el comando
SQL:
COMMIT

I. Solicite nuevamente a su compaero que se conecte al esquema de su base de datos REGIS a travs
de la red o utilice la conexin system y empleando la sentencia SQL SELECT, visualizar el contenido
de las tablas AREA, CARGO y TRABAJADOR e indique si puede obtener como resultado los registros
que acaba de adicionar en los pasos B, C y D desde su propia PC a travs de la red. Indique si se
pueden ver los nuevos registros y explique el resultado obtenido:

Si se pudo entrar a su base ded datos a aprtir del system de mi pc solo que se cambio en nombre de system a mar to lu~1

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 4 de 16

J. Empleando la sentencia UPDATE. Modifique el nombre de las dos reas que adicion en el paso B.
Indique las sentencias SQL empleadas:

K. Empleando la sentencia UPDATE Modifique el nombre de los cargos que adicion en el paso C. Indique
las sentencias SQL empleadas:

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 5 de 16

L. Empleando la sentencia UPDATE Modifique el nombre y las direcciones de los trabajadores que adiciono
en el paso D. Indique las sentencias SQL empleadas:

M. Empleando la sentencia SQL SELECT verifique que los nuevos registros adicionados en los pasos B, C
y D contienen ahora los nuevos valores modificados en los pasos J, K y L

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 6 de 16

N. Solicite nuevamente a su compaero que se conecte al esquema de su base de datos REGIS a travs
de la red o utilice la conexin system y empleando la sentencia SQL SELECT, visualizar el contenido
de las tablas AREA, CARGO y TRABAJADOR e indique si puede obtener como resultado los registros
que acaba de modificar en los pasos J, K y L desde su propia PC a travs de la red. Indique si se
pueden ver los nuevos datos y explique el resultado obtenido:

O. Grabe de manera permanente los registros modificados en la base de datos empleando el comando
SQL:
COMMIT

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 7 de 16

P. Solicite nuevamente a su compaero que se conecte al esquema de su base de datos REGIS a travs
de la red o utilice la conexin system y empleando la sentencia SQL SELECT, visualizar el contenido
de las tablas AREA, CARGO y TRABAJADOR e indique si puede obtener como resultado los registros
que acaba de adicionar en los pasos J, K y L. Indique si se pueden ver los nuevos registros y explique
el resultado obtenido:

Q. Empleando la sentencia DELETE. Elimine una de las dos reas que adicion en el paso B. Indique la
sentencia SQL empleada:

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 8 de 16

R. Empleando la sentencia DELETE. Elimine uno de los dos cargos que adicion en el paso C. Indique la
sentencia SQL empleada:

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 9 de 16

S. Empleando la sentencia DELETE. Elimine uno de los dos trabajadores que adicion en el paso D.
Indique la sentencia SQL empleada:

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 10 de 16

T. Empleando la sentencia SQL SELECT verifique que los registros eliminados en los pasos Q, R y S ya
no estn presentes en las tablas correspondientes
U. Solicite nuevamente a su compaero que se conecte al esquema de su base de datos REGIS a travs
de la red o utilice la conexin system y empleando la sentencia SQL SELECT, visualizar el contenido
de las tablas AREA, CARGO y TRABAJADOR e indique si puede obtener como resultado los registros
que acaba de eliminar en los pasos Q, R y S:

V. Elimine de manera permanente los registros que fueron eliminados en la base de datos empleando el
comando SQL:
COMMIT
W. Solicite nuevamente a su compaero que se conecte al esquema de su base de datos REGIS a travs
de la red o utilice la conexin system y empleando la sentencia SQL SELECT, visualizar el contenido
de las tablas AREA, CARGO y TRABAJADOR e indique si puede obtener como resultado los registros
que acaba de eliminar en los pasos Q, R y S desde su propia PC a travs de la red:

VI.

DESHACER MODIFICACIONES - ROLLBACK


A. Insertar 1 registro a la tabla AREA. Anote el comando SQL empleado:

B. Modificar 1 registro de la tabla CARGO. Anote el comando SQL empleado:

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 11 de 16

C. Eliminar 1 registro de la tabla TRABAJADOR. Anote el comando SQL empleado:

D. Empleando la sentencia SQL SELECT verifique la existencia o no de los registros adicionados,


modificados y eliminados en los pasos A, B y C
No hay porque elimine la ultime fila que me quedaba

E. Procederemos a deshacer los cambios realizados ejecutando el siguiente comando SQL:


ROLLBACK
F. Empleando nuevamente la sentencia SQL SELECT verifique la existencia o no de los registros
adicionados, modificados y eliminados en los pasos A, B y C

G. Qu puede decir acerca de la sentencia SQL ROLLBACK?


Esta sentencia nos ayuda a restaurar los cambios que se han hecho en la base de datos dentro de
una unidad de trabajo o punto de salvaguarda.

VII.

DESHACER MODIFICACIONES SAVEPOINT Y ROLLBACK TO


A. Crear una marca de restauracin con el comando SQL:
SAVEPOINT UNO
B. Insertar 1 registro a la tabla AREA. Anote el comando SQL empleado:

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 12 de 16

C. Modificar 1 registro de la tabla CARGO. Anote el comando SQL empleado:

D. Crear una segunda marca de restauracin con el comando SQL:


SAVEPOINT DOS
E. Insertar 1 registro a la tabla CARGO. Anote el comando SQL empleado:

F. Eliminar 1 registro de la tabla TRABAJADOR. Anote el comando SQL empleado:

G. Empleando la sentencia SQL SELECT verifique las inserciones, modificaciones y eliminaciones que
acaba de realizar en la base de datos

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 13 de 16

H. Procederemos a restaurar las modificaciones realizadas a partir de la segunda marca de restauracin


denominada DOS creada en el paso D
ROLLBACK TO DOS;

I. Empleando nuevamente la sentencia SQL SELECT verifique las inserciones, modificaciones y


eliminaciones que acaba de realizar en la base de datos. Que efecto ha tenido el comando ejecutado
en el paso anterior? (H)

J. Procederemos a restaurar las modificaciones realizadas a partir de la primera marca de restauracin


denominada UNO creada en el paso A
ROLLBACK TO UNO;

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 14 de 16

K. Empleando nuevamente la sentencia SQL SELECT verifique las inserciones, modificaciones y


eliminaciones que acaba de realizar en la base de datos. Que efecto ha tenido el comando ejecutado
en el paso anterior? (J)

VIII.

EJERCICIO DE APLICACIN ACCESO A ORACLE DESDE PHP


A.

EJERCICIO DE APLICACIN ACCESO A ORACLE DESDE PHP


A Continuacin se muestra el procedimiento para poder acceder a la informacin almacenada en una
base de datos Oracle desde PHP. Haremos uso de la librera denominada ADODB para PHP la cual
permite acceder a cualquier base de datos empleando las mismas funciones.
Procedimiento:
a)

En su equipo virtual. Instale el programa WAMPSERVER (se crear la carpeta c:\wamp)

b)

El mdulo PHP por defecto permite conexiones a la base de datos MySQL, pero NO a Oracle.
Habilite el mdulo PHP para acceder a la base de datos Oracle:
1. Con el Bloc de notas. Abrir el archivo de configuracin
C:\wamp\bin\apache\apache2.2.8\bin

c)

2.

Con la herramienta Buscar del bloc de notas ubique el texto php_oci8

3.

Una vez encontrado dicha cadena, ELIMINE el ; (punto y coma) ubicado al inicio de dicha
lnea.

4.

Grabe y cierre el archivo de configuracin.

5.

Reinicie el WAMPSERVER para que reconozca la nueva configuracin.

En la carpeta c:\wamp\www\ crear la siguientes estructura de carpetas:

Laboratorio de Base de Datos


07 Manipulacin de datos

Nro. DD-106
Pgina 15 de 16

d)

Solicite el archivo empaquetado conteniendo la librera ADODB

e)

Desempaquetar el archivo anterior y copiar la carpeta adobo5 a la carpeta lib

f)

En la carpeta test crear un archivo denominado test_oracle.php

g)

Adicione al programa anterior el siguiente contenido:


<?php
include "../lib/adodb5/adodb.inc.php";
$db = NewADOConnection("oci8");
$db->Connect("localhost", "system", "XPTecsup2","XE");
$rs = $db->Execute("select * from hr.employees order by 1");
echo "<h1>Relacion de empleados<h1>
<table border=1 cellpadding=5>
<tr> <th> Id </th>
<th>First Name</th>
<th>Last Name</th>
</tr>";
while ($arr = $rs->FetchRow()) {
echo "<tr>";
for( $xc = 0 ; $xc < 3; $xc++ )
echo "<td>". $arr[$xc]."</td>";
echo "</tr>";
}
echo "</table>";
$db->close();

?>

Desde el navegador Web. Ejecute el programa test_oracle.php y verifique que se visualice el listado de
empleados.

Laboratorio de Base de Datos


07 Manipulacin de datos

IX.

Nro. DD-106
Pgina 16 de 16

OBSERVACIONES Y CONCLUSIONES

-Es necesario crear una red en la maquina virtual para conectarse en nuestro caso
creamos una red de nombre AUTO ETH1 donde configuramos la IP y dns y todo
-Al momento de modificar la persona que consulta la tabla se demora en ver lo que
tienen la tabla, al momento de ejecutar el commit la tabla en la maquina conectada
-puede ver mas rpidamente la tabla y observa las modificaciones que hize.
-Para insertar las fechas debemos de ponerlas como varchar ,sino no nos correra la
lnea
-Es necesario para borrar los datos en la tabla rea y cargo ver lo que hemos insertado
esta bien ,porue si son iguales es decir cod_area1=1 y cod_cargo=1 no se puede
eliminar tendremos que cambiar el rea a 2 letras pero antes debemos de alterar las
tablas porque al momento de ingresar los datos dice que tiene una relacin de primary
key y forneas por lo cual se altero la relacin y se pudo borrar y cambiar las tablas
-Para la utilizacin del rollback se observo que puede regresar a varios modificaciones
anteriores
-En la utilizacin de savepoint es de ejecucin por orden es decir para hacer mas
cautelosos de chacer modificaciones ,y para que podamos regresar con el rollback de
estas ejecuciones ,es decir como un previo a ejecuciones y si esta mal la ejecucin o
no queremos que se quede solo usamos el rollback para devolver a su estado anterior .
-El savepoint debe de utilizarse en grupo es decir seleccionar todos lo comandos junto
con el savepoint y ponerlo a ejecutar porque sino se ejecutara por separado y no se
guardara en el savepoint,y tendremos problemas al restaurar con el rollback.
-Se logr insertar registros en una tabla exixtente y creada
-Se actualizo y elimino registros de tabla
-Se logro conectar a una maquina virtual es decir a la base de datos creada por mi
compaero
-Se logro ver sus modificaciones despus de usar el comando commit
-Se logro restaurar modificaciones con el ROLLBACK