Data">
CC: 17976599-Jose Javier Churio Pumarejo
CC: 17976599-Jose Javier Churio Pumarejo
CC: 17976599-Jose Javier Churio Pumarejo
FASE 3 - IMPLEMENTACIÓN
PARTICIPANTES:
GRUPO No.
301125_3
Tutor:
Mariano Estban Romero
Colombia
2023
TABLA DE CONTENIDO
INTRODUCCIÓN.............................................................................................................3
OBJETIVOS......................................................................................................................4
RESULTADO....................................................................................................................5
1. Selección y respuesta de la pregunta motivadora...............................................5
2. Activador o Disparadores...................................................................................6
3. Procedimientos Almacenados.............................................................................6
4. Cursores..............................................................................................................7
5. Evidencias de la participación en el foro............................................................8
CONCLUSIONES...........................................................................................................11
BIBLIOGRAFÍA.............................................................................................................12
INTRODUCCIÓN
Objetivo General
Desarrollar
Objetivo Generalprocedimientos en bases de datos relacionales mediante
codificaciones en el lenguaje PL/SQL que optimice el manejo de
Aquígrandes
debe escribir el objetivodegeneral
volúmenes datosdel trabajo
Objetivos Específicos
Objetivos Específicos
Identificar el lenguaje de procedimientos PL/SQL
Analizar
Objetivo 1 y desarrollar los activadores del lenguaje de procedimientos
PL/SQL
Objetivo 2
Generar procedimientos almacenados y cursores del lenguaje de
Objetivo 3
procedimientos PL/SQL
Objetivo n
Responder de manera analítica cada una de las preguntas de
motivación propuestas
RESULTADO
Comentario: …….
Autor del comentario:
Nombre Estudiante 3 :
Pregunta 3:¿Reflexione sobre qué son cursores y cuál es la importancia de su
uso?
Comentario: …….
Autor del comentario:
Nombre Estudiante 4:
Pregunta 4:¿Comprenda cuál es la diferencia entre activadores, procedimientos
almacenados y cursores?
Respuesta:
Estos términos y acciones propias de Bases de datos, Bases de datos relacionales y
en un DBMS relacionan registros y procesos.
Un Activador o trigger (desencadenador) como también se le conoce es una clase
especial de procedimiento almacenado que se ejecuta automáticamente cuando se
produce un evento en el servidor de bases de datos. Los triggers se ejecutan cuando
un usuario intenta modificar datos mediante un evento de lenguaje de manipulación
de datos (DML). Los eventos DML son instrucciones INSERT, UPDATE o DELETE de
una tabla o vista. Estos triggers se activan cuando se desencadena cualquier evento
válido, con independencia de que las filas de la tabla se vean o no afectadas.
Los triggers utilizan dos tablas virtuales denominadas inserted y deleted. SQL Server
crea y administra automáticamente ambas tablas. La estructura de las tablas
inserted y deleted es la misma que tiene la tabla que ha desencadenado la ejecución
del trigger.
Un procedimiento almacenado es un conjunto de instrucciones que SQL Server
compila, en un único plan de ejecución, los llamados "store procedures" se
encuentran almacenados en la base de datos, los cuales pueden ser ejecutados en
cualquier momento. Se utilizan para agrupar las instrucciones de T-SQL y cualquier
lógica asociada necesaria para llevar a cabo una tarea.
Este procedimiento nos brinda a nosotros los usuarios un acceso fácil a la base de
datos, se puede tener acceso a la base de datos sin tener que conocer los detalles de
la arquitectura de tablas simplemente se ejecutan los procedimientos almacenados
que llevan a cabo las tareas solicitadas.
Entre las diferencias más importantes entre Activadores y el Procedimiento
almacenados relacionamos las siguientes:
- El Procedimiento almacenado es un procedimiento definido por el usuario y el
fragmento de código definido por el usuario, mientras que el Activador es un
procedimiento almacenado que se ejecuta automáticamente cuando ocurren ciertos
tipos de eventos como : INSERT, UPDATE o DELETE.
-Los Disparadores se ejecutan automáticamente cada vez que ocurre un evento en el
servidor de la base de datos, mientras que el Procedimiento almacenado es
generalmente una forma avanzada del código SQL que se puede reutilizar una y otra
vez después de guardar el archivo, respectivamente.
Los cursores son tipos de variables que se usan para hacer referencia al conjunto de
resultados de una Select. Permite ir procesando esos registros uno por uno si se usa
dentro de un bucle. En resumen, utilizaremos varias sentencias T-SQL para manipular
el cursor. Esas sentencias quedan guardadas dentro de un procedimiento
almacenado, pero también es lícito enviarlas directamente dentro de un lote, sin
usar procedimientos almacenados.
Comentario: …….
Autor del comentario:
Nombre Estudiante 5 :
Pregunta 5: ¿Qué se conoce como lenguaje PL/SQL y cuál es su diferencia del
lenguaje SQL?
Respuesta: PL/SQL es el lenguaje de programación que proporciona Oracle para
extender el SQL estándar con otro tipo de instrucciones y elementos propios de los
lenguajes de programación.
Con PL/SQL vamos a poder programar las unidades de programa de la base de
datos Oracle:
Procedimientos almacenados
Funciones
Triggers
Scripts
Pero además, PL/SQL nos permite realizar programas sobre las siguientes
herramientas de Oracle:
Oracle Forms
Oracle Reports
Oracle Graphics
Oracle Aplication Server
SQL significa
Los comandos SQL se utilizan para operaciones DDL y DML en tablas, a saber.
insertar / actualizar / eliminar datos en / de tablas presentes en esquemas y bases
de datos.
PLSQL significa
Los códigos PLSQL se usan para crear y trabajar con conceptos más avanzados como
funciones, procedimientos almacenados y disparadores. Estos fragmentos de código
están formados por múltiples comandos SQL que deben ejecutarse en alguna
secuencia para implementar la lógica transformacional y / o computacional
requerida.
Comentario: …….
Autor del comentario:
2. Activador o Disparadores
Nombre del estudiante 1 :
Código:
create trigger "Personas_AI" after insert on "Personas" for each row
insert into Reg_Persona(Id_persona,Nombre_persona,Apellido_Persona,inse
rtado) values (new.Id_persona,new.Nombre_persona,new.Apellido_Persona,n
ow())
Resultado de la consulta:
Resultado de la consulta:
Resultado de la consulta:
Resultado de la consulta:
Para probarlo debemos insertar datos en la tabla estudiantes:
INSERT INTO Estudiantes (@Nombres, @Apellidos, @Telefono)
VALUES (' Pedro', ' Lopez', ' 3122130000',)
Esta consulta afectará dos filas, esto es así porque fueron insertados los datos
indicados en la tabla Estudiantes y a su vez automaticamente el Trigger inserto datos
en la tabla RegistroTblMatriculados.
Resultado de la consulta:
3. Procedimientos Almacenados
Nombre del estudiante 1: Elimine el texto y escriba el nombre
Código:
Resultado de la consulta:
Nombre del estudiante 2: Elimine el texto y escriba el nombre
Código:
Resultado de la consulta:
Resultado de la consulta:
Para ejecutar nuestro procedimiento almacenado basta con escribir el nombre del
procedimiento que hemos creado al inicio:
PROC_NOMBRE
Lo que realizara es una consulta del nombre, apellido y teléfono de un estudiante,
mientras el nombre sea igual al que le especificamos en el parámetro de entrada, es
decir que seria obligatorio enviarle el parámetro, para que pueda devolvernos
resultados, el procedimiento almacenado lo podemos ejecutar en cualquier
momento debido a que queda guardado en el servidor.
Los procedimientos que realicemos se almacenaran dentro de la carpeta
programación, específicamente en una subcarpeta denominada procedimientos
almacenados
Resultado de la consulta:
4. Cursores
Nombre del estudiante 1: Elimine el texto y escriba el nombre
Código:
Resultado de la consulta:
Resultado de la consulta:
Resultado de la consulta:
OPEN CursorReg
FETCH NEXT FROM CursorReg
CLOSE CursorReg
DEALLOCATE CursorReg
Resultado de la consulta:
Este comando es netamente declarativo, simplemente especifica las filas y columnas
que se van a recuperar. La consulta se ejecuta cuando se abre o se activa el cursor. Al
abrir el cursor se evalúa la consulta que aparece en su definición, utilizando los valores
actuales de cualquier parámetro referenciado en la consulta, para producir una
colección de filas.
Una vez abierto el cursos se utiliza la cláusula FETCH para recuperar las filas del cursor.
Para cerrar un cursor se utiliza el comando CLOSE, este comando hace desaparecer el
puntero sobre el registro actual.
Resultado de la consulta:
5. Evidencias de la participación en el foro
Se espera que cada estudiante presente las evidencias de su participación en el foro con
relación al Desarrollo Unidad 2 - Fase 3 - Implementación, al igual que comentarios
significativos a los aportes de los demás compañeros del grupo.