Responder a las siguientes preguntas de
forma breve pero clara.
1. ¿Qué es FETCH?
FETCH es un
comando relacionado con los cursores que extrae la siguiente fila de valores
del conjunto de los resultados del cursor moviendo su puntero interno en una posición.
2. ¿Para qué se utilizan los
cursores?
Los cursores se
utilizan para manipular los datos de una fila que queramos recuperar dichos
datos. Se puede asociar con un conjunto de filas.
3. ¿Qué ocurre si hacemos un fetch antes que un open?
Si no realizamos
un open no inicializa el conjunto de resultados asociados con el cursor
entonces si realizamos un fetch antes que un open no nos extraerá la siguiente
fila de valores.
4. ¿Qué ocurre si al declarar un cursor no declaramos
su handler?
Se producirá un
error que significara que hemos llegado a la ultima fila.
5. ¿Qué ocurre si no se utiliza la sentencia close en
un cursor?
Que el cursos no
se cierra y sigue ocupando y teniendo acceso a la memoria de sus datos
6. Define lo qué es un trigger.
Un trigger es como
un contador de funciones, cada vez que el usuario crea una sentencia con
trigger, esté suma las veces que se introduce un nuevo movimiento con dicha
sentencia.
7. ¿Qué tipos de triggers existen? Diferencias.
De orden que
define el tipo de operación y provoca la activacion del trigger (son los
valoresINSERT, UPDATE o DELETE.)
De
temporalizacion(before o after). Estos deciden si se activan antes o despues de
que se ejecute la operación anterior (Las de ORDEN).
De nivel (Fila u
orden). Estos se activan una vez por cala fila afectada por la orden que
provocó el disparo. Se desactivan solo una vez, antes o despues de la orden.
Estos se pueden identificar por la clausula for each row.
8. ¿Cómo podemos saber que triggers se han creado en
una base de datos?
Podemos
consultarlo en la tabla INFORMATION_SCHEMA.TRIGGERS
9. ¿Qué usos tienen los triggers?
Se pueden usar
para controles de sesiones, que nos permiten ver un resumen de lo realizado en
una sesión de un usuario. Tambien se pueden usar para el control de valores de
entrada, mantenimiento de campos derivados, estadisticas o registro y
auditoria.
10. ¿Cuándo se ejecuta un trigger?
Se ejecuta
cuando implícitamente se ejecuta una sentencia INSERT, UPDATE o DELETE.
1. Realizar un procedimiento
almacenado que nos muestre a partir de un número introducido como parámetro
cuales su factorial. (Ejemplo: 6! = 6*5*4*3*2*1 = 720) Para realizarla se debe
utilizar un bucle.
2. Se conoce como sucesión
de Padovan aquella cuyo término enésimo se calcula como n = (n- 2)+(n-3)
Ejemplo: 1, 1, 1, 2, 2, 3, 4, 5, 7,… Crear un procedimiento almacenado que
reciba como parámetro un número x, mayor de3, y calcule los x primeros números
de la sucesión de Padovan.
3. Realizar una función
almacenada que devuelva, a partir de un número introducido como parámetro, si
es perfecto o no. Un número es perfecto cuando es igual a la suma de sus
divisores. Ejemplo: 6 = 1 + 2+ 3
Nota.- Para resolverlo crear
previamente una función almacenada que dados dos números como parámetros
devuelva si uno es divisor del otro.
No hay comentarios:
Publicar un comentario