En las consultas de producto cartesiano
Se pueden usar más de dos columnas como columnas de emparejamiento
No se permite combinar entre sí varias tablas
No es necesario identificar columnas con el mismo nombre
Ninguna es correcta
. la consulta anterior Seleccionar nombre y apellidos de empleados de cada departamento
Sería equivalente eliminando la palabra INNER
Es errónea
Ninguna de las anteriores
. El fin de la consulta es Obtener el nombre de los clientes y los pedidos realizados en el último año.
Obtener todos los clientes que tienen pedidos.
Se trata de una consulta errónea
Obtener los clientes que no tienen pedidos.
. En la sentencia anterior, los datos que se pretende obtener son
Los clientes que tienen pedidos y todos los clientes que existan.
Todos los pedidos y cualquier cliente que exista.
Los clientes que tienen pedido.
Ninguna de las anteriores
. A través del código anterior
Se obtienen todas las filas de clientes y pedidos.
Se obtienen todas las columnas de clientes y pedidos.
Se obtienen los clientes con pedidos.
Ninguna de las anteriores
. Mediante la sentencia anterior
Se muestran los libros que ha publicado Arturo Pérez Reverte para una editorial.
Tiene parámetros erróneos, no devolvería nada.
Se muestran las editoriales que han publicado libros de Arturo Pérez Reverte.
Ninguna de las anteriores
. En el caso de la consulta anterior
Se obtienen el nombre y número de empleado cuya fecha de pedido sea igual a la de su contrato.
Se obtienen el nombre y número de empleado con fecha de contrato igual al primer pedido de la empresa.
Existen errores, por lo que no se devolverá ningún valor.
Ninguna es correcta
. Empleando la cláusula ALL en subconsultas…
Se compara cualquier fila de la consulta
Se comprueba si un valor determinado está en el resultado de la subconsulta
Se comprueba si el valor no está en la subconsulta.
Se compara con todas las filas de la subconsulta.
. Mediante la consulta mostrada anteriormente
Se seleccionan los Departamentos cuya media de salarios es mayor que la media de salarios de los empleados.
Se seleccionan los Departamentos cuya media de salarios es mayor.
Se seleccionan los Departamentos cuya media de salarios es menor que la total.
Ninguna de las anteriores.
. Mediante el uso de la cláusula UNION
Se analizan las filas de dos SELECT, devolviendo aquellas filas que están en ambas tablas.
Se combinan los resultados de sentencias SELECT, manteniéndose las filas duplicadas.
Se consiguen los datos de las filas del primer SELECT que no aparecen en el segundo.
Ninguna es correcta
. Para la inserción de nuevos registros en la base de datos se utiliza el comando
INSERT INTO
UPDATE SELECT
DELETE
. La consulta anterior
Actualiza el salario de los empleados
Actualiza el salario de algunos empleados
Es errónea
Ninguna de las anteriores
. El fin de la consulta anterior es
Actualizar el departamento de los empleados al 5.
Eliminar los empleados que pertenecen al departamento nº 5.
Se trata de una consulta errónea
Obtener los datos de los empleados del departamento nº 5.
. La gestión de la información mediante herramientas gráficas
No es posible, en ningún caso.
Sólo es posible en Oracle.
No se utiliza habitualmente porque no es muy útil
Ninguna de las anteriores
. A través del código anterior
Se insertan en APROBADOS los alumnos con nota mayor o igual de 5.
Se insertan en APROBADOS los datos de los alumnos.
Es una consulta errónea.
Ninguna de las anteriores
. Mediante la sentencia anterior
Se insertan EMPLEADOS con salario modificados en la tabla.
Tiene parámetros erróneos, no devolvería nada.
Se modifica el salario de algunos empleados al máximo existente.
Es una sentencia errónea, no se pueden utilizar dos SELECT.
. En el caso de la consulta anterior
Se eliminan los empleados que están incluidos en la tabla FALTAS_GRAVES.
La consulta es errónea, el sistema dará error.
Se seleccionan determinados empleados, que están en FALTAS_GRAVES.
Ninguna es correcta
. Mediante el código anterior
Se crea la tabla FK_PERSONA con clave ajena ESTADO
Se declara la clave ajena CODIGO de ESTADOS_CIVILES.
Se crea la tabla ESTADO como referencia a la tabla ESTADOS_CIVILES.
Se crea una clave ajena asociada al campo CODIGO, de la tabla ESTADOS_CIVILES.
. Mediante la cláusula ON DELETE CASCADE
Se impide la modificación de los datos de una tabla padre si en la hijo existen datos.
Se permite el borrado de los datos de la tabla padre aunque en la hijo existan datos.
Se actualizan los valores de la tabla padre aunque existan valores iguales en la hijo.
Se impide el borrado de los datos de la tabla padre siempre que en la hijo existan datos referenciados.
. Mediante la cláusula ON DELETE RESTRICT
Se impide la modificación de los datos de una tabla padre si en la hijo existen datos.
Se permite el borrado de los datos de la tabla padre aunque en la hijo existan datos.
Se actualizan los valores de la tabla padre aunque existan valores iguales en la hijo.
Se impide el borrado de los datos de la tabla padre siempre que en la hijo existan datos referenciados.
. ¿Qué tipos de claves existen?
Primarias y ajenas
Candidatas y ajenas
Primarias y candidatas
Ninguna es correcta
. Las claves candidatas se caracterizan por
Diferenciar dos tuplas de manera unívoca
Poder ser clave primaria por sus características
Relacionar unas tablas con otras
Encontrarse en otras tablas diferentes
. La utilización de un número elevado de índices en una base de datos
Es lo conveniente, en cualquier caso
Puede contribuir a disminuir la eficacia de la misma
No afecta de ninguna manera a la base de datos
No es aconsejable su utilización, en cualquier caso
. El valor NULL
Es el valor de un campo cuando se desconoce el real
Corresponde a un campo vacío
Corresponde a un campo con valor cero
Ninguna de las anteriores
. Los resultados que se obtendrán a partir de las siguientes condiciones son
FALSE, TRUE, DESCONOCIDO
FALSE, FALSE, FALSE
TRUE, TRUE, TRUE
TRUE, FALSE, FALSE
. Mediante la restricción DEFAULT
Se prohíben los valores duplicados
Se prohíbe que un campo pueda valer NULL
Se indica que se proporcione un valor por defecto a un campo vacío
Establece una condición que deben cumplir los campos
. En cuanto a usuarios y privilegios, podríamos afirmar que
No es un asunto relevante en la gestión de la base de datos
Un administrador debe tener más privilegios que otros usuarios
Es necesario que cada usuario tenga unos privilegios, pero pueden ser al azar
Ninguna es correcta
. La seguridad en una base de datos se puede aumentar mediante
Una gestión adecuada de roles y privilegios de usuarios
Aplicando redundancia al almacenamiento de datos
Realizando copias de seguridad periódicamente
Todas son correctas
. Las copias de seguridad en frío se caracterizan por
Realizarse mediante el sistema sigue funcionando
Realizarse con el sistema parado
Realizarse a una temperatura muy baja
Ninguna es correcta
. En Oracle las copias de seguridad se realizan mediante la herramienta
En Oracle no existe una herramienta para realizar copias de seguridad
COPY DATABASE
SECURE DATABASE
RMAN
. Una transacción
A. Comienza con una instrucción SQL y puede finalizar por varias causas.
B. Comienza con una instrucción SQL y finalizar con una instrucción ROLLBACK.
C. Comienza con una instrucción SQL y finalizar con una instrucción COMMIT.
D. Ninguna es correcta
. La cláusula SAVEPOINT se utiliza para
A. Guardar la situación de la base de datos antes de modificar algo.
B. Crear puntos de restauración a los que aplicar ROLLBACK.
C. Crear puntos de salvaguarda del sistema que se mantienen una vez finalizada la transacción.
D. Ninguna de las anteriores
. Las propiedades básicas de las transacciones son
A. Atómicas, constancia, aislamiento y duración.
B. Atomicidad, consistencia, aislamiento y durabilidad.
C. Atomicidad, resistencia, duración y aislamiento.
D. Atómicas, constancia, aislamiento y durabilidad.
. La importancia de establecer un correcto manejo de la concurrencia de datos es
A. Garantizar la integridad y consistencia de la información.
B. Permitir que varios usuarios modifiquen simultáneamente datos.
C. Posibilitar que se acceda a la información al mismo tiempo que se modifican los datos.
D. Ninguna de las anteriores
. La propiedad wait-die de una marca de tiempo se caracteriza por
A. Liberar una transacción que entra en conflicto con otra con marca de tiempo más reciente.
B. Eliminar una transacción que tiene una marca de tiempo más reciente.
C. Bloquear una transacción que entra en conflicto con otra con marca de tiempo más reciente. Si es más antigua, se elimina.
D. Ninguna de las anteriores
. Una política de bloqueo pesimista se caracteriza por
A. No realizar el bloqueo de manera inmediata.
B. Bloquear el recurso cuando se están actualizando los datos del disco.
C. Ser la opción adecuada en todos los casos.
D. Ninguna de las anteriores.
. Una de las reglas definidas por Oracle para el mecanismo de bloqueos es
A. Bloquear un registro tanto si se modifica como si la operación es de lectura.
B. No bloquear una operación de lectura si la operación que se esté desarrollando sobre un dato es de escritura.
C. No Bloquear una operación de escritura concurrente a otra operación de escritura.
D. Ninguna es correcta
. Un bloqueo exclusivo se caracteriza principalmente por
A. Permitir que un recurso sea compartido
B. Permitir que un recurso sea compartido, siempre que la operación sea de lectura.
C. Permitir la modificación de un recurso mientras no está liberado.
D. Impedir que un recurso en concreto sea compartido.
. La sentencia SELECT FOR UPDATE
A. Produce un bloqueo exclusivo del dato que se quiere modificar
B. Produce un bloqueo exclusivo del dato que se quiere modificar y a la vez un bloqueo compartido de la tabla.
C. Produce un bloqueo compartido de la tabla.
D. Ninguna de las anteriores.
. Los bloqueos automáticos pueden cancelarse a nivel de transacción en el caso de
A. Un bloqueo automático no puede cancelarse en ningún caso.
B. Sólo pueden cancelarse los bloqueos automáticos a nivel de sesión.
C. Utilizar la cláusula LOCK TABLE, en ningún otro caso.
D. Utilizar la cláusula LOCK TABLE.
. En PL/SQL, un procedimiento se caracteriza por
Ser un programa almacenado en la base de datos, que comienza por PROCEDURE.
Ser un programa que puede ser referenciado desde otros
Ser una porción de código que puede anidarse entre sí
Ninguna es correcta
. En PL/SQL se cumple que
No se distingue entre mayúsculas y minúsculas
Se utiliza la palabra DECLARE para definir variables, constantes y excepciones
Los comentarios se marcan entre /* y */ o a continuación de -- .
Todas son correctas
. Los tipos de datos en PL/SQL pueden ser
Numéricos, booleanos o de fecha
Numéricos, alfanuméricos, booleanos o de fecha
Numéricos y alfanuméricos
Alfanuméricos, booleanos y de fecha.
. En el código anterior se declaran
Las variables vehículo y consumo, y la constante año_fabricacion.
Las variables año_fabricacion, vehículo y consumo.
Las variables año_fabricacion y vehículo.
Ninguna de las anteriores
. En PL/SQL el atributo %TYPE se utiliza para
Almacenar datos sobre el tipo de la variable.
Hacer referencia a una variable tipo registro.
Hacer referencia a un campo concreto de una tabla.
Ninguna de las anteriores
. Mediante la sentencia anterior La variable a se multiplica por dos y posteriormente se le suman dos unidades.
Tiene parámetros erróneos, no devolvería nada.
Si a es menor de 3 se multiplica por 2, si está entre 3 y 25 se le suman dos unidades.
Se le suman dos unidades a la variable a en cualquier caso.
. ¿Qué resultado produciría la sentencia anterior?
Indicaría por pantalla los números del 1 al 10.
Indicaría por pantalla los números del 1 al 9.
No muestra ningún resultado al no entrar en el bucle y tampoco da ningún error.
Ninguna es correcta
. Mediante el código anterior
Se muestran los números del 1 al 9
Se muestran los números del 1 al 10
Se muestran los números del 1 al 10 en orden inverso
Se muestran los números del 1 al 9 en orden inverso
. Las excepciones en PL/SQL se utilizan para
Verificar segmentos de código erróneos
Tratar o capturar errores
Indicar acciones que se salen de lo habitual en programación
Indicar que un determinado código se trata de distinta forma.
. Las excepciones en PL/SQL pueden ser
Automáticas y definidas por el usuario.
Definidas por el usuario y predefinidas por el sistema.
Definidas por el usuario y definidas por el sistema.
Definidas por el usuario, predefinidas por el sistema y no predefinidas.
. Un conjunto de datos relacionados entre sí agrupados en campos es un
Registro
Array Cursor Tabla anidada
. Mediante el código anterior se está
Declarando un array
Declarando un registro
Declarando un cursor
Ninguna de las anteriores
. DECLARE
RegistroHOTEL1 HOTEL%ROWTYPE;
BEGIN Declarar una variable de tipo hotel
Crear un registro utilizando el mismo tipo de datos que los de una tabla
Se trata de un código erróneo
Modificar el valor de código y número de habitaciones
. Un conjunto de elementos del mismo tipo almacenados en un determinado orden es un
Registro
Array
Cursor
Tabla anidada
. A través del código anterior
Se crean arrays de 100 elementos tipo persona y posteriormente se inicializan
Se crea un array de 100 elementos tipo persona
Es un código erróneo
Ninguna de las anteriores
. Mediante la sentencia anterior
Se obtienen por pantalla datos de un array
Tiene parámetros erróneos, no devolvería nada.
Se obtienen por pantalla datos de un registro
Es una sentencia errónea, el SELECT no está bien construido.
. Una_prueba1.FIRST;
En la sentencia anterior, siendo una_prueba1 un array, ¿qué devolvería el código anterior? El número de elementos de un array
El primer elemento del array
El límite del array
Ninguna es correcta
. En los cursores, el atributo %FOUND
Es un atributo de arrays, no de cursores
Devuelve TRUE si el primer FETCH devuelve un dato
Devuelve TRUE si el último FETCH no ha devuelto ningún valor
Devuelve TRUE si el último FETCH ha devuelto una fila
. En relación a los cursores, ¿Qué se obtiene mediante el atributo %ISOPEN?
Devuelve TRUE si el cursor está cerrado
Devuelve TRUE si el cursor está abierto
Devuelve el número de filas procesadas por el cursor abierto
Devuelve FALSE si el cursor está abierto
. La cláusula NOWAIT en cursores se utiliza para
Indicar al programa que espere la ejecución de una determinada instrucción en curso
Indicar al programa que no se detenga si una tabla está siendo utilizada por otro usuario
Detener el programa durante cierto tiempo
Devolver el programa al funcionamiento habitual tras haberlo detenido
. La sentencia REPLACE en un procedimiento
Indica que si existe algún procedimiento con igual nombre se mantendrá
Indica que si existe algún procedimiento con igual nombre el nuevo no se creará
Indica que si existe algún procedimiento con igual nombre se cambiará por el nuevo
Ninguna es correcta
. Mediante la vista USER_SOURCE
Podemos comprobar todos los procedimientos y funciones existentes en Oracle.
Podemos visualizar todos los paquetes existentes en Oracle.
Podemos visualizar todos los paquetes, procedimientos y funciones existentes en Oracle.
Esa vista no existe en Oracle
. La diferencia entre función y procedimiento radica en
No existe diferencia entre ambos subprogramas
En funciones se añade la cláusula RETURN
Los procedimientos devuelven valores
Las funciones necesitan recibir parámetros
. CREATE FUNCTION Factorial (n NUMBER) IS
BEGIN
IF(n<=1) THEN
RETURN 1
ELSE
RETURN n*Factorial(n-1);
END IF;
END;
En relación al código anterior podemos afirmar que Es erróneo, una función no puede llamarse a sí misma.
No está correctamente implementado
Devolverá valores aleatorios según el parámetro recibido
Aplica el concepto de recursividad en una función
. De estas afirmaciones ¿cuál es la correcta?
En PL/SQL no está permitido utilizar notación posicional para pasar parámetros.
Los parámetros de salida no existen
En los parámetros de entrada, no es posible inicializarlos a un valor por defecto.
Ninguna de las anteriores
. La vista USER_TRIGGERS
Contiene información sobre los disparadores existentes
Contiene información sobre los procedimientos existentes
Contiene información sobre las funciones existentes
Contiene información sobre los procedimientos y funciones existentes
. CREATE OR REPLACE TRIGGER prueba
BEFORE INSERT ON personal
BEGIN
IF(TO_CHAR(SYSDATE,’HH24’) NOT IN (‘1’,’2’,’3’) THEN RAISE_APPLICATION_ERROR(-20201, ‘Sólo es posible añadir datos entre la 1 y las 2:59’);
END INF;
END; Es un disparador que se utiliza para añadir datos a la tabla de personal.
Es un disparador que controla que se puedan añadir registros a la tabla personal en un horario determinado.
Es incorrecto, no tendría ningún efecto
Ninguna es correcta
. ALTER TRIGGER disparadorPrueba ENABLE;
Mediante el código anterior Se habilita el trigger disparadorPrueba
Se elimina el trigger disparadorPrueba
Se ejecuta el trigger disparadorPrueba
Se modifica el trigger disparadorPrueba
. ALTER TABLE disparadores ENABLE ALL TRIGGERS;
Se habilitan todos los disparadores de la base de datos
Se activan todos los disparadores de la tabla disparadores
Se habilitan todos los disparadores de la sesión de usuario
Se modifican todos los disparadores de la base de datos
. Las APIs de acceso a bases de datos
Son elementos que apenas son utilizados en la actualidad
Proporcionan mecanismos para construir nuevas funcionalidades y tecnologías relacionadas con la información que contiene la base de datos.
Se utilizan sólo para el entorno web, especialmente en aplicaciones JAVA.
En recomendable que cualquier usuario del sistema las conozca, para implementar acciones sobre la base de datos.
. Algunos conceptos relacionados con las bases de datos objeto – relacionales son los siguientes
Método
Sobrecarga
Objeto Todas las anteriores
. En un sistema BDOR
Los tipos de datos son sencillos
El código que se implementa no es fácil de reutilizar
Es complicada la integración con lenguajes de programación
Ninguna es correcta
. Respecto al modelo orientado a objetos y el modelo relacional
Un objeto se puede comparar con un atributo
Una variable se puede comparar con un atributo
Un objeto se puede comparar con una relación
Ninguna es correcta
. El concepto de herencia
Es una propiedad que permite ocultar información al resto de objetos
Es una propiedad que permite que los objetos tengan comportamientos similares dentro de una jerarquía.
Es una propiedad mediante de una operación que permite que sea aplicada a diferentes tipos de objetos.
Ninguna es correcta
. El concepto de encapsulación
Es una propiedad que permite ocultar información al resto de objetos
Es una propiedad que permite que los objetos tengan comportamientos similares dentro de una jerarquía.
Es una propiedad mediante de una operación que permite que sea aplicada a diferentes tipos de objetos.
Ninguna es correcta
. Un tipo de dato objeto
Es plano, sólo necesita un nombre
Tiene una parte de especificación y otra parte de cuerpo
No se representa habitualmente
Ninguna de las anteriores
. En la definición de tipos de objeto se utiliza el comando
CREATE TYPE objeto AS OBJECT
CREATE objeto AS OBJECT
CREAR objeto
Ninguna de las anteriores
. En relación a la declaración de atributos de un tipo de objeto
Se puede utilizar cualquier tipo de dato disponible
Se pueden utilizar otros objetos como atributos
No es necesario declararlos, van implícitos en el objeto
Se pueden declarar después de los métodos
. En relación a la definición de métodos
Se pueden identificar como funciones o procedimientos.
Se pueden declarar en el cuerpo del tipo de objeto.
Contiene atributos
Ninguna de las anteriores
. El código anterior muestra un ejemplo de
Métodos constructores
Modificación de atributos
Sobrecarga
Ninguna de las anteriores
. ¿Qué se está realizando a través del código anterior?
Declarar una función que devuelve un objeto alumno
Declarar un procedimiento al que se le pasa un objeto por parámetro
Declarar un objeto de tipo alumno
Ninguna de las anteriores
. Mediante la sentencia anterior
Se está declarando un objeto
Se está inicializando un objeto de tipo venta
Se está modificando un objeto de tipo venta
Ninguna es correcta
. Deseamos crear una variable para almacenar un tipo de objeto Venta ¿cómo lo haríamos?
Venta venta1;
Venta1 venta;
Venta1 := venta;
Venta := venta1;
. Deseamos asignar un valor 30 al atributo importe del objeto venta1
30 = venta1;
venta1.importe := 30;
importe.venta1 := 30;
Ninguna es correcta
. Si deseamos acceder al método obtenerImporte del objeto venta1 utilizaremos
venta1.obtenerImporte();
obtenerImporte().venta1;
venta1().obtenerImporte;
obtenerImporte.venta1();
. Si deseamos que un tipo de objeto pueda ser heredado por otros debemos incluir el siguiente comando en su declaración
FINAL
NOT FINAL
UNDER
MAP
. Los métodos STATIC
Se invocan sobre el tipo de objeto
Se invocan sobre instancias de un objeto
Se usan para cambiar o leer el valor de los atributos
No se suelen utilizar
. La palabra UNDER se utiliza para
Indicar que un tipo de objeto no puede heredar de otros
Indicar que un tipo de objeto no puede ser heredado
Indicar que un tipo de objeto puede ser heredado
Ninguna de las anteriores
. En un método ORDER, ¿de qué manera se hace referencia al parámetro del objeto que no se pasa por parámetro?
Con un nuevo método creado para tal fin
Con el comando MAP
Con el comando ORDER
Con el comando SELF
. Si utilizamos el método ORDER para comparar dos tipos de objeto iguales, se devolverá el valor
Negativo
Positivo
Nulo
Cero
. Los tipos de datos colección VARRAY
Están ordenados mediante un índice
No tienen un orden determinado
Son tablas anidadas
Son elementos de distintos tipos
. Para recorrer internamente un VARRAY
Se utilizan sentencias condicionales
No es posible llevarlo a cabo
Se utilizan accesos directos a cada dato
Ninguna es correcta
. A través de la sentencia anterior se está:
Creando un objeto
Creando una tabla
Declarando una NESTED TABLE
Ninguna es correcta
. Mediante la anterior sentencia se está:
Creando una tabla de elementos t_profes
Creando una tabla t_profes formada por objetos profesor
Creando una tabla con columnas VARCHAR
Ninguna es correcta
. Un ejemplo de creación de tabla con columnas de los atributos de un objeto
CREATE TABLE profe1 OF (columna profesor);
CREATE TABLE profe1 OF profesor;
CREATE TABLE profe2 (c1 profesor);
Ninguna es correcta
. Para insertar objetos en una tabla se utiliza el comando
UPDATE
SELECT
DROP
Ninguna de las anteriores
. El comando UPDATE
Se utiliza habitualmente acompañado de WHERE
No se puede usar con objetos
Se usa siempre con SELECT
Se usa siempre con INSERT
. Mediante el código anterior:
Se inserta un objeto tipo profe2 en una tabla
Se modifica el valor del objeto cuyo id sea 1234.
Se modifica el valor del objeto con nombre Maria.
Se actualizan todos los objetos cuyo nombre es María.
. A través de la cláusula DELETE
Se permite eliminar objetos de una tabla
Se permite modificar el valor de los atributos de un objeto
Se permite eliminar atributos de un objeto
Ninguna de las anteriores
. Uno de los usos de la cláusula VALUE es
Modificar el valor de un atributo de un objeto
Mostrar el valor de un objeto
Comparar objetos entre sí
Ninguna de las anteriores
.
|