Base de datos

Solo disponible en BuenasTareas
  • Páginas : 5 (1091 palabras )
  • Descarga(s) : 0
  • Publicado : 25 de noviembre de 2010
Leer documento completo
Vista previa del texto
PRACTICA: MANIPULACION DE PROCEDIMIENTOS ALMACENADOS OBJETIVO: El objetivo de la práctica es conocer el uso de PROCEDIMIENTOS ALMACENADOS de base de datos, para controlar el flujo y actualización de información en la base de datos como medio de seguridad y sobre todo considerar acciones cuando no se incluyan dentro de una aplicación. Para ello, será necesario acceder al servidor MOWES, y utilizarla consola de comando de MYSQL. Eventualmente, se hará uso de la sesión de phpMyAdmin, para verificar ó realizar algunas acciones para ver el funcionamiento de los PROCEDIMIENTOS.
DESARROLLO Antes de iniciar cualquier proceso, deberá ejecutar MOWES y acceder a phpmyadmin. Durante los ejercicios, alterne entre la ventana de comandos y la de phpMyAdmin, para verificar los resultados. NOTA: Sidesea visualizar los triggers de base de datos creados, podrá utilizar las siguientes instrucciones SELECT * FROM information_schema.TRIGGERS O tambien: SELECT trigger_name, action_statement FROM information_schema.triggers;

EJERCICIO 1. Conectarse a la consola de MySQL Antes de iniciar el proceso de conexión a la consola, deberá crear un Nuevo Usuario en la Base de Datos MySQL. Para ello, alingresar en phpMyAdmin en el panel de la derecha encontrará una opción denominada privilegios. Ahí indicará el usuario, servidor y contraseña para el usuario a crear. Luego mas abajo, verá todos los privilegios disponibles, tales como SELECT, INSERT, DELETE, UPDATE, CREATE, DROP, etc. En este punto, después de crear uno o dos usuarios, deberá acceder por medio de la consola de MySQL con el(los)usuario(s) creado(s)   Normalmente ha estado accediendo con la siguiente instrucción: mysql –h localhost –u root Pruebe ingresando con uno de los usuarios creados de la siguiente manera: mysql –h localhost –u usuario –p Presione Enter, le pedirá la contraseña de este usuario EJERCICIO 2. Crear una base de datos con la ventana de comandos Ingresar la siguiente línea de comando: CREATE DATABASEPROCEDIMIENTOS; Luego diríjase a phpMyAdmin y actualice la pantalla, visualice el resultado y regresa a la ventana de comandos para continuar con los ejercicios. EJERCICIO 3. Conectarse a la base de datos PROCEDIMIENTOS en la ventana de comandos Use procedimientos;

EJERCICIO 4. Creación de procedimientos simples Ej4a Crear procedimiento CREATE PROCEDURE cuadrado (IN numero INTEGER) SELECTnumero*numero;

Ej4b probar el procedimiento CALL cuadrado(5);

EJERCICIO 5. Procedimientos con variables de usuario. Ej5a Creación del procedimiento anterior usando variables de usuario CREATE PROCEDURE cuadrado2 (IN numero INTEGER, OUT resultado INTEGER) SELECT numero*numero INTO resultado;

Ej5b probar el procedimiento CALL cuadrado2(6,@r); Aquí no se devuelve nada aparentemente, y es porque el datoes almacenado en la variable publica @r, la cual se muestra a continuación: Ej5c mostrar la variable SELECT @r;

EJERCICIO 6. Procedimientos interactuando con tablas Ej6a - Crear tablas de trabajo CREATE TABLE tabla1 ( numero INTEGER PRIMARY KEY AUTO_INCREMENT, numero2 INTEGER, numero3 INTEGER); CREATE TABLE tabla2 ( numero INTEGER PRIMARY KEY,

numero2 INTEGER, numero3 INTEGER);

Ej6b -Creación del procedimiento DELIMITER // CREATE PROCEDURE ejemplo (num INTEGER) # usa BEGIN - END para indicar el inicio y fin del procedimiento BEGIN # inserta un registro en la tabla1 INSERT INTO tabla1 VALUES(NULL, num+num, num*num); # retorna el último valor generado automáticamente que se insertó # en una columna AUTO_INCREMENT. SET @ultimo := LAST_INSERT_ID(); # usa el valor de @ultimo parahacer una inserción en la segunda tabla INSERT INTO tabla2 VALUES (@ultimo, @ultimo+@ultimo, @ultimo*@ultimo); END # usa el delimitador // para indicar que la definición del procedimiento a terminado // # restablece el ";" como delimitador DELIMITER ;

Ej6c - Invocar al procedimiento CALL ejemplo (2); CALL ejemplo (4);

CALL ejemplo (6);

Ej6d - Mostrar los registros creados o verlos en...
tracking img