Sunteți pe pagina 1din 8

Cursores explícitos con

parámetros, cláusulas
for Update-Where
Current y Subconsultas

PBY3101: Programación de Base


de Datos
Marzo 2018
Cursores explícitos con
parámetros, cláusulas
for Update-Where
Current y Subconsultas
Cursores explícitos con parámetros, cláusulas for Update-Where Current y
Subconsultas

Se pueden pasar parámetros a un cursor. Esto significa que se puede abrir y cerrar
un cursor explícito varias veces en un bloque, devolviendo un set activo diferente
en cada ocasión. Para cada ejecución, el cursor se debe haber cerrado con
anterioridad para poder ser abierto nuevamente con un nuevo conjunto de
parámetros.
Cada parámetro formal en la declaración del cursor debe tener su valor
correspondiente en la sentencia OPEN. Los valores de los parámetros pasan al
cursor cuando se abre y la consulta es ejecutada.
Cursores explícitos con parámetros, cláusulas for Update-Where Current y
Subconsultas

Es particularmente útil cuando el mismo cursor es referenciado en forma


repetida, pero con valores diferentes.
En la sintaxis:
• nombre_cursor: es un identificador PL/SQL para el cursor declarado.
• nombre_parámetro: es el nombre de un parámetro.
• tipo_dato: es el tipo de dato escalar del parámetro.
• sentencia_select: es una instrucción o sentencia SQL que debe ser
procesada cuyo resultado quedará en el Cursor.
• valor_parámetro: es el valor que se le asigna al parámetro definido en
el cursor.
Cursores explícitos con parámetros, cláusulas for Update-Where Current y
Subconsultas

El bloque del ejemplo posee un cursor con parámetro p_deptno, que según el
valor que se le asigne cuando se abra obtendrá información de los empleados
que trabajen en el departamento asignado por parámetro.
En este caso se insertan filas de los empleados que trabajan en el departamento
30 y 20.
Cursores explícitos con parámetros, cláusulas for Update-Where Current y
Subconsultas

Una subconsulta es una consulta SQL, generalmente entre paréntesis, que


está dentro de otra sentencia SQL. Cuando es evaluada, la subconsulta
proporciona una valor o set de valores para la consulta externa.
Cursores explícitos con parámetros, cláusulas for Update-Where Current y
Subconsultas

Pueden ser usadas también en una cláusula FROM creando una fuente de
dato temporal para la consulta.
Las subconsultas son usadas a menudo en la cláusula WHERE de una
sentencia Select. Pueden ser usadas también en una cláusula FROM
creando una fuente de dato temporal para la consulta.
El bloque del ejemplo, se INSERTAN en tabla empleado_salario, los
empleados que posean un salario menor al salario promedio
Una subconsulta es una consulta SQL que proporciona una valor o set de
valores para la consulta externa.
Cursores explícitos con parámetros, cláusulas for Update-Where Current y
Subconsultas
El bloque del ejemplo, se INSERTAN
en tabla empleado_departamento,
los departamentos cuyo salario
promedio de empleados sea mayor
al salario promedio de todos los
empleados.
Una subconsulta es una consulta
SQL que proporciona una valor o
set de valores para la consulta
externa, se puede utilizar en
cláusulas WHERE como en el
ejemplo anterior o en cláusula
HAVING, cuando se utilizan
funciones de grupo como en este
ejemplo.