BASE DE DATOS/TEMA 9
|
|
Título del Test:
![]() BASE DE DATOS/TEMA 9 Descripción: PARTE 3 |



| Comentarios |
|---|
NO HAY REGISTROS |
|
¿Qué es un cursor en PL/SQL?. Un mecanismo que permite recorrer fila por fila el resultado de una consulta. Una restricción de integridad que impide valores duplicados en una tabla. Un comando que confirma automáticamente transacciones sin intervención. Un índice especial que optimiza operaciones INSERT masivas. ¿Cuál es la finalidad principal de un cursor?. Procesar secuencialmente registros cuando se necesita tratamiento fila a fila. Eliminar automáticamente registros huérfanos en claves foráneas. Sustituir procedimientos almacenados por consultas simples. Impedir bloqueos mediante aislamiento SERIALIZABLE obligatorio. ¿Qué tipo de cursor gestiona Oracle automáticamente?. Cursor implícito creado al ejecutar INSERT, UPDATE, DELETE o SELECT INTO. Cursor explícito declarado manualmente con OPEN y FETCH. Cursor parametrizado obligatorio en cualquier consulta SELECT. Cursor exclusivo que se activa únicamente dentro de triggers. ¿Cuál es una característica de un cursor explícito?. Debe declararse y controlarse manualmente con OPEN, FETCH y CLOSE. Se crea automáticamente en cualquier sentencia SQL sin intervención. No puede utilizarse en bucles de procesamiento de datos. Solo existe en bases de datos NoSQL basadas en documentos. ¿Cuál es el primer paso para usar un cursor explícito?. Declarar el cursor asociándolo a una consulta SELECT. Ejecutar directamente FETCH sin abrir el cursor. Confirmar la transacción con COMMIT antes de abrirlo. Crear un trigger BEFORE INSERT que lo active automáticamente. ¿Qué acción realiza OPEN en un cursor explícito?. Ejecuta la consulta asociada y prepara el conjunto de resultados. Recupera directamente todas las filas en una variable automática. Confirma los cambios realizados dentro del cursor. Elimina la necesidad de usar FETCH posteriormente. ¿Qué función cumple FETCH en un cursor?. Recuperar una fila del cursor y almacenarla en variables. Cerrar el cursor y liberar recursos automáticamente. Confirmar la transacción al finalizar el recorrido. Insertar registros dentro de la tabla consultada. ¿Qué acción realiza CLOSE?. Cierra el cursor y libera recursos asociados. Recupera la última fila pendiente del conjunto. Confirma automáticamente los cambios en la tabla. Convierte el cursor explícito en implícito. ¿Por qué es importante cerrar un cursor explícito?. Para liberar memoria y recursos del sistema gestor. Para eliminar automáticamente registros duplicados. Para ejecutar un COMMIT obligatorio al final. Para impedir lecturas sucias en concurrencia. ¿Qué permite un cursor con parámetros?. Filtrar dinámicamente los resultados según valores de entrada. Ejecutar automáticamente un ROLLBACK si hay error. Sustituir el uso de funciones almacenadas. Evitar la necesidad de declarar variables en PL/SQL. ¿Qué ventaja ofrece Cursor FOR LOOP?. Simplifica el uso eliminando la necesidad de OPEN, FETCH y CLOSE manuales. Obliga a gestionar manualmente cada fila con FETCH explícito. Solo puede usarse en transacciones SERIALIZABLE. Impide recorrer resultados mayores a una fila. ¿Cuándo se recomienda usar cursores?. Cuando se necesita procesamiento secuencial fila por fila. Siempre que se ejecute una consulta SELECT simple. Únicamente para operaciones TRUNCATE masivas. Solo cuando se quiere evitar el uso de procedimientos almacenados. ¿Qué es una transacción en PL/SQL?. Un conjunto de operaciones SQL ejecutadas como unidad atómica. Un cursor implícito que recorre registros automáticamente. Un trigger que se activa al insertar registros. Una excepción predefinida que captura errores comunes. ¿Cuál es el comando principal para confirmar una transacción?. COMMIT. ROLLBACK. SAVEPOINT. FETCH. ¿Cuál es la función principal de ROLLBACK?. Revertir cambios realizados antes de confirmar la transacción. Confirmar parcialmente operaciones dentro del cursor. Eliminar automáticamente todos los registros de una tabla. Crear un procedimiento almacenado temporal. ¿Qué permite SAVEPOINT dentro de una transacción?. Definir un punto intermedio para revertir parcialmente sin abortar todo. Confirmar automáticamente cambios hasta ese momento. Sustituir el uso de COMMIT definitivo. Eliminar bloqueos de concurrencia permanentemente. ¿Qué relación existe entre cursores y transacciones?. Cursores pueden usarse dentro de transacciones para procesar datos controladamente. Cursores eliminan la necesidad de COMMIT y ROLLBACK. Transacciones solo existen si se usan cursores explícitos. Cursores convierten transacciones en operaciones no atómicas. ¿Qué ocurre si se hace COMMIT dentro de un procesamiento con cursor?. Se confirman cambios acumulados hasta ese punto dentro de la transacción. El cursor se cierra automáticamente sin posibilidad de continuar. Se eliminan todas las filas restantes del conjunto de resultados. Se convierte el cursor explícito en implícito automáticamente. ¿Qué riesgo existe si se procesa fila por fila sin transacción?. Puede haber inconsistencias si ocurre un fallo a mitad del proceso. Se duplican automáticamente claves primarias. Se eliminan restricciones de integridad referencial. Se bloquea permanentemente toda la base de datos. ¿Qué atributo de cursor implícito indica cuántas filas fueron afectadas?. Atributos como SQL%ROWCOUNT asociados a cursores implícitos. Propiedades ACID aplicadas automáticamente a cada consulta. Restricciones de dominio activadas por triggers. SAVEPOINT internos creados por el gestor. ¿Qué ocurre si un cursor explícito no se abre con OPEN?. No se pueden recuperar filas con FETCH correctamente. Se confirma automáticamente la transacción activa. Se elimina el conjunto de resultados del servidor. Se activa una excepción NO_DATA_FOUND obligatoria. ¿Qué sucede si se hace FETCH después de cerrar el cursor?. Se produce un error porque el cursor ya no está disponible. El sistema reabre automáticamente el cursor sin intervención. Se ejecuta un COMMIT implícito sobre la transacción. Se insertan filas nuevas en la tabla consultada. ¿Qué ventaja aporta usar cursores explícitos frente a consultas directas?. Permiten control detallado del recorrido y procesamiento de registros. Eliminan completamente la necesidad de integridad referencial. ) Sustituyen procedimientos y funciones almacenadas. ) Impiden el uso de transacciones dentro de bloques PL/SQL. ¿Qué ocurre si se omite CLOSE en un cursor explícito?. Se pueden consumir recursos innecesarios y generar problemas de rendimiento. El sistema elimina automáticamente todas las filas recuperadas. La transacción se confirma obligatoriamente al finalizar. Se convierte el cursor en trigger automático. ¿Cuál es el objetivo central de cursores y transacciones en PL/SQL?. Procesar datos de forma controlada y consistente manteniendo coherencia en operaciones complejas. Eliminar completamente el uso de SQL estándar en consultas. Sustituir bloqueos y control de concurrencia por inserciones masivas. Evitar el manejo de errores mediante ejecución automática sin excepciones. |




