B3-T3 SQL
40 Questions
2 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

¿Qué característica principal distingue a SQL Lite de otros sistemas de gestión de bases de datos?

  • Requiere configuración previa antes de su uso
  • Es un sistema con múltiples servidores
  • No es compatible con el estándar ACID
  • Funciona sin servidor y es ideal para aplicaciones pequeñas (correct)
  • ¿Cuál de los siguientes comandos pertenece a DCL?

  • CREATE TABLE
  • INSERT INTO
  • SET TRANSACTION (correct)
  • ROLLBACK
  • ¿Qué opción describe correctamente SQL/PSM?

  • Es exclusivo de Oracle y no se aplica a otros sistemas
  • Funciona únicamente en SQL Lite
  • Es un estándar que integra programación procedural en SQL (correct)
  • Es un lenguaje de definición de datos
  • ¿Qué tipo de ejecución se utiliza para modificar datos en una base de datos?

    <p>DML</p> Signup and view all the answers

    ¿Cuál de las siguientes bases de datos utiliza el puerto 1433 por defecto?

    <p>SQL Server</p> Signup and view all the answers

    ¿Qué hace el comando 'SAVEPOINT' en el contexto de TCL?

    <p>Guarda el estado actual de la transacción para un posible retorno</p> Signup and view all the answers

    ¿Cuál de las siguientes opciones no se considera un tipo de ejecución en SQL?

    <p>RGL</p> Signup and view all the answers

    ¿Qué establecimiento se utiliza para la creación de funciones y procedimientos almacenados?

    <p>DDL</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones sobre el comando ROLLBACK es correcta?

    <p>Deshace todos los cambios realizados en la transacción hasta su inicio.</p> Signup and view all the answers

    ¿Qué comando se usa para asegurarse de que los cambios se apliquen de manera permanente en la base de datos?

    <p>COMMIT</p> Signup and view all the answers

    ¿Cuál es una característica del comando DELETE en comparación con TRUNCATE?

    <p>Cada fila se elimina individualmente, activando disparadores.</p> Signup and view all the answers

    ¿Cómo afecta el comando TRUNCATE a los valores de las columnas con auto-incremento?

    <p>Reinicia los valores de auto-incremento a cero.</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones sobre el uso de OFFSET en una consulta es correcta?

    <p>Define el punto inicial de las filas devueltas.</p> Signup and view all the answers

    ¿Qué ventaja tiene el uso de SAVEPOINT dentro de una transacción?

    <p>Facilita volver a un punto específico sin afectar toda la transacción.</p> Signup and view all the answers

    ¿Qué sucede si se intenta usar DELETE en filas que tienen dependencias en otras tablas?

    <p>Se desencadena un error debido a la integridad referencial.</p> Signup and view all the answers

    ¿Cuál es la función principal de la cláusula LIMIT en una consulta SQL?

    <p>Definir un número máximo de resultados devueltos.</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones sobre los procedimientos almacenados es correcta?

    <p>Un procedimiento almacenado puede modificar un valor recibido y devolverlo.</p> Signup and view all the answers

    ¿Qué tipo de JOIN se utiliza para recuperar todas las filas de la tabla izquierda y las coincidencias de la tabla derecha?

    <p>LEFT [OUTER] JOIN</p> Signup and view all the answers

    ¿Cuál es la característica principal de un CROSS JOIN?

    <p>Devuelve el producto cartesiano de ambas tablas.</p> Signup and view all the answers

    ¿Cuál de los siguientes JOINs devuelve filas donde hay coincidencias en A o B?

    <p>FULL [OUTER] JOIN</p> Signup and view all the answers

    ¿Cuál es la diferencia clave entre un INNER JOIN y un OUTER JOIN?

    <p>INNER JOIN muestra solo filas coincidentes, OUTER JOIN incluye NULL en las filas faltantes.</p> Signup and view all the answers

    En un SELF JOIN, ¿qué se busca comparar?

    <p>Filas dentro de la misma tabla.</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones es falsa sobre la invocación de procedimientos almacenados?

    <p>Los procedimientos almacenados se invocan completamente diferentes a las funciones.</p> Signup and view all the answers

    En el contexto de un LEFT [OUTER] JOIN, ¿qué sucede si no hay coincidencias?

    <p>Se muestran filas con valores NULL en la tabla derecha.</p> Signup and view all the answers

    ¿Cuál es la función de un índice en una tabla de base de datos?

    <p>Permitir localizar rápidamente las filas basadas en el contenido de la columna indexada.</p> Signup and view all the answers

    ¿Qué comando DCL se utiliza para revocar permisos ya otorgados?

    <p>REVOKE</p> Signup and view all the answers

    ¿Qué permite la opción 'WITH GRANT OPTION' en un comando GRANT?

    <p>Conceder permisos a otros usuarios o roles.</p> Signup and view all the answers

    ¿Cuál es el propósito de la cláusula GROUP BY en una consulta SQL?

    <p>Agrupar registros por una o más columnas para su análisis.</p> Signup and view all the answers

    ¿Qué usuario puede ejecutar una consulta SELECT que incluye la cláusula HAVING?

    <p>Usuarios que hayan utilizado la cláusula GROUP BY en la consulta.</p> Signup and view all the answers

    ¿Qué operación se realiza con el comando DML 'DELETE'?

    <p>Eliminar registros de una tabla.</p> Signup and view all the answers

    Al usar la función de agregado COUNT, ¿qué tipo de datos cuenta?

    <p>Solo los valores no nulos.</p> Signup and view all the answers

    ¿Cuál es el propósito de la cláusula ORDER BY en una consulta SQL?

    <p>Ordenar los resultados de la consulta según una o más columnas.</p> Signup and view all the answers

    ¿Cuál es la diferencia principal entre un trigger FOR EACH ROW y un trigger FOR EACH STATEMENT?

    <p>FOR EACH ROW se ejecuta tantas veces como filas hay y FOR EACH STATEMENT solo una vez.</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones sobre el comando MERGE es correcta?

    <p>El comando MERGE realiza operaciones de insertar, actualizar o eliminar en función de la coincidencia de datos.</p> Signup and view all the answers

    ¿Qué tipo de información proporciona el Monitor Transaccional en SQL?

    <p>Permite visualizar transacciones activas y conflictos como deadlocks.</p> Signup and view all the answers

    ¿Qué ocurre realmente durante una lectura sucia en una transacción?

    <p>La transacción puede leer datos que están siendo modificados por otra transacción no confirmada.</p> Signup and view all the answers

    ¿Qué caracteriza a los niveles de aislamiento en las transacciones?

    <p>Controlan cómo se manejan las interacciones entre transacciones concurrentes.</p> Signup and view all the answers

    ¿Cuál de los siguientes niveles de aislamiento es el menos restrictivo?

    <p>Read Uncommitted.</p> Signup and view all the answers

    ¿Cuál de las siguientes características sobre los triggers es correcta?

    <p>Los triggers pueden ser ejecutados automáticamente en respuesta a cambios en la tabla.</p> Signup and view all the answers

    ¿Qué es un deadlock en el contexto de transacciones?

    <p>Una situación donde dos o más transacciones se bloquean mutuamente, impidiendo su avance.</p> Signup and view all the answers

    Study Notes

    Lenguaje SQL

    • SQL es un lenguaje de consulta estructurado para manejar información en una base de datos.
    • Permite modificar, añadir y eliminar datos.
    • Es un lenguaje 4GL declarativo con extensiones procedurales.
    • No es un lenguaje de programación, sino de consulta.
    • Trabaja bajo el estándar ISO-9075.

    Productos SQL

    • Algunos productos que utilizan SQL: Oracle, Microsoft SQL Server, MySQL/MariaDB, Informix, IBM DB2, MaxDB.

    SQL Lite

    • Sistema de gestión de bases de datos relacional (RDBMS) ligero y compatible con el estándar ACID.
    • Sin configuración, ideal para aplicaciones pequeñas o medianas.

    SQL/PSM

    • Extensión del estándar ISO SQL que introduce programación procedural en bases de datos relacionales.
    • Permite la creación de funciones y procedimientos almacenados.
    • El código se ejecuta en el gestor de base de datos.

    PL/SQL

    • Lenguaje procedimental diseñado por Oracle para trabajar con su sistema de base de datos.
    • En SQL Server, el lenguaje procedimental se llama Transact-SQL.

    Tipos de Bases de Datos Relacionales

    • Oracle (puerto 1521 o 2483)
    • Microsoft SQL Server (puerto 1433)
    • MySQL (puerto 3306)
    • Apache Derby (puerto 1527)
    • MariaDB (puerto 3306)
    • MaxDB
    • SQLite
    • HSQLDB
    • PostgreSQL (puerto 5432)
    • Aurora

    Tipos de Ejecuciones SQL

    • DDL (Data Definition Language):
      • Creación, borrado y eliminación de objetos (tablas, índices, etc.).
    • DML (Data Manipulation Language):
      • Consulta, borrado, modificación e inserción de datos.
    • DCL (Data Control Language):
      • Control de acceso a los datos.
      • Comandos comunes: GRANT y REVOKE.
    • TCL (Transaction Control Language):
      • Control del procesamiento de las transacciones.
      • Comandos:
        • COMMIT: Guarda el trabajo realizado.
        • SAVEPOINT: Identifica un punto en una transacción para un rollback parcial.
        • ROLLBACK: Restaura la base de datos a un estado anterior.
        • SET TRANSACTION: Modifica las opciones de transacción, como el nivel de aislamiento.

    Vistas

    • Representaciones virtuales de datos.
    • Son dinámicas o estáticas.
    • Vistas Dinámicas: muestran datos de una o dos tablas e incluyen todas las columnas de las tablas especificadas.
    • Vistas Estáticas: pueden mostrar datos de múltiples tablas y se deben especificar las columnas relevantes en la consulta.

    Índices

    • Estructuras de datos que permiten la búsqueda rápida de filas en base a su contenido en una columna.
    • Facilitan la recuperación de filas ordenadas por la columna indexada.

    DCL: Grant y Revoke

    • GRANT: otorga permisos a usuarios o roles en la base de datos.
    • REVOKE: revoca permisos previamente otorgados.

    DML: Insert, Update, Delete, Select

    • INSERT: Agrega datos nuevos a una tabla.

    • UPDATE: Modifica datos existentes en una tabla.

    • DELETE: Elimina datos de una tabla.

      • SELECT: Consulta o lee datos de una tabla.
        • Puede utilizar:
          • Columnas individuales
          • Funciones agregadas (SUM, COUNT, MAX, MIN, AVG)
          • Subconsultas
          • Cálculos
        • Permite:
          • GROUP BY: Agrupa registros por columna(s).
          • HAVING: Filtra grupos basados en condiciones agregadas.
          • ORDER BY: Ordena los resultados (ASC o DESC).
          • LIMIT: Limita el número de filas devueltas.
          • OFFSET: Define el punto de inicio de las filas devueltas.

    TCL: Rollback y Savepoint

    • ROLLBACK: Deshace los cambios realizados en la base de datos desde el inicio de una transacción.
    • SAVEPOINT: Permite un rollback parcial a un punto específico dentro de una transacción.

    Transacciones

    • Un conjunto de operaciones SQL que se ejecutan como una unidad atómica.
    • Deben cumplir las propiedades ACID:
      • Atomicidad: Todas las operaciones se ejecutan o ninguna.
      • Consistencia: Las operaciones mantienen la integridad de la base de datos.
      • Isolacion: Las transacciones se ejecutan de forma independiente.
      • Durabilidad: Los cambios realizados se mantienen permanentemente.

    Delete y Truncate

    • DELETE: Elimina filas específicas de una tabla.
      • Las operaciones activan disparadores y registros de transacciones por cada fila eliminada.
      • Se puede combinar con COMMIT y ROLLBACK.
      • Respeta las restricciones de integridad referencial.
      • Más lento que TRUNCATE para grandes cantidades de datos.
    • TRUNCATE: Elimina todas las filas de una tabla, pero no permite el uso de WHERE.
      • No se pueden eliminar filas individuales.
      • Elimina filas masivamente.
      • Más rápido que DELETE para grandes cantidades de datos.
      • No se puede combinar con COMMIT o ROLLBACK.

    Triggers

    • Procedimientos almacenados que se ejecutan automáticamente en respuesta a ciertos eventos en una base de datos.
    • No se ejecutan con TRUNCATE.
    • Se pueden utilizar como FOR EACH ROW o FOR EACH STATEMENT.

    Merge

    • Sincroniza datos entre dos tablas o entre una tabla y una consulta.
    • Permite realizar operaciones INSERT, UPDATE o DELETE basadas en coincidencias de datos.

    Monitor Transaccional

    • Herramienta para supervisar y gestionar el estado de las transacciones en una base de datos.
    • Proporciona información sobre:
      • Transacciones activas.
      • Bloqueos y esperas de recursos.
      • Conflictos entre transacciones.
      • Rendimiento y estado de las transacciones en ejecución.
    • Niveles de aislamiento:
      • Read Uncommitted: Lectura de datos no confirmados (menos restrictivo, más rápido, pero menos seguro).
      • Read Committed: Lectura solo de datos confirmados (comúnmente usados).
      • Se pueden configurar niveles de aislamiento adicionales.

    Procedimientos Almacenados

    • Bloques precompilados de código SQL que se ejecutan en el servidor de bases de datos.
    • Permiten ejecutar tareas complejas de forma eficiente.
    • Se pueden utilizar con parámetros de entrada (IN), parámetros de salida (OUT) y parámetros de entrada y salida (INOUT).
    • Para invocar un procedimiento almacenado se utiliza CALL.

    Funciones

    • Similar a los procedimientos almacenados, pero devuelven un valor.
    • Se pueden utilizar en otras consultas SQL.
    • Se pueden utilizar parámetros de entrada y salida.

    Tipos de Joins

    • Combinan filas de dos o más tablas basadas en una condición.
    • CROSS JOIN: Combinación de todas las filas de ambas tablas, independientemente de coincidencia.
    • INNER JOIN: Devuelve solo las filas que coinciden en ambas tablas.
    • LEFT OUTER JOIN: Devuelve todas las filas de la primera tabla y las filas coincidentes de la segunda tabla.
    • RIGHT OUTER JOIN: Devuelve todas las filas de la segunda tabla y las filas coincidentes de la primera tabla.
    • FULL OUTER JOIN: Devuelve todas las filas de ambas tablas, rellenando con valores NULL donde no hay coincidencia.
    • SELF JOIN: Une una tabla consigo misma para comparar filas dentro de la misma tabla.

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    B3-T3 SQL.pdf

    Description

    Este cuestionario explora el lenguaje SQL y sus diversas aplicaciones en la gestión de bases de datos. Incluye productos populares como Oracle y MySQL, así como extensiones como SQL/PSM y PL/SQL. A través de este quiz, podrás comprobar tus conocimientos sobre SQL y sus características específicas.

    Use Quizgecko on...
    Browser
    Browser