Unidad 5: Operaciones de Manipulación de datos Flashcards
Operaciones del lenguaje de Manipulación de Datos (DML)
- INSERT: para agregar filas a una tabla.
- UPDATE: para modificar filas de una tabla.
- DELETE: para borrar filas de una tabla.
- SELECT: para consultar tablas.
Consultas Simples
- SELECT *
FROM tabla
WHERE condición/es - INSERT INTO nombre_tabla VALUES (at1,at2, etc..)
-UPDATE tabla SET columna = expresión
- DELETE FROM tabla WHERE condición/es
Consultas de mayor complejidad
- Subconsultas (
SELECT*
FROM tabla
WHERE columna_comparacion = Subconsulta) - UNION
- INTERSECT
- EXCEPT (Diferencia)
Funciones de Grupo
Permiten realizar operaciones sobre un conjunto de filas en una consulta.
Combinaciones de tablas
- Producto Cartesiano
- Natural Join
- INNER - LEFT- RIGHT y FULL JOIN
VARIABLES, TABLAS TEMPORALES Y EXPRESIONES COMUNES DE TABLA.
Las variables, tablas temporales y expresiones comunes de tabla se utilizan para crear un espacio en memoria para almacenar resultados intermedios entre consultas que se ejecutarán una a continuación de la otra.
Formas de Encapsulamiento de código en SQL
- Funciones
- Procedimientos Almacenados
- Disparadores
Formas de Encapsulamiento de código en SQL (FUNCIONES- FUNCTIONS)
Son la forma más sencilla de encapsular cálculos y algunas operaciones simples con registros y campos que se utilizan luego en una consulta SQL. Las funciones se ejecutan en el servidor de la base de datos.
Formas de Encapsulamiento de código en SQL (PROCEDIMIENTOS ALMACENADOS - STORE PROCEDURES)
Se usan a menudo para realizar consultas SQL, insertar, actualizar o eliminar registros sobre los objetos de la base de datos de una manera transparente, desde el punto de vista del cliente de la aplicación. Se ejecutan directamente en el servidor de base de datos.
- Simplificación de la gestión: Los SP pueden permitir que la lógica de negocio se encuentre como una API
- Mejora en la seguridad: Los SP facilitan algunas tareas de administración de seguridad y asignación de permisos.
- Centralización de la definición: Los SP pueden ser ejecutados por cualquier aplicación que tenga acceso a la misma.
- Reducción del tráfico de red: puede escribirse como un procedimiento almacenado en el servidor y ejecutarse simplemente mediante el nombre de dicho procedimiento, en lugar de enviar todas las líneas de código por la red desde el cliente hasta el servidor.
-Encapsulamiento: encapsulan gran parte de la lógica del negocio - Ejecución centralizada en el servidor: El procedimiento almacenado corre directamente bajo el control del motor de bases de datos
-Reducción de la escalabilidad: Los SP nos esclavizan al motor de base de datos
Formas de Encapsulamiento de código en SQL (DISPARADORES - TRIGGERS)
Un trigger es un objeto de la base de datos que está asociado con una tabla, y que se activa cuando se produce un evento particular en ella. Basicamente, un Trigger puede activarse cuando se produce un evento:
- INSERT
- DELETE
- UPDATE
Definición Optimización de Consultas
En la mayoría de los SGBD no se tendrá la posibilidad de escoger la implementación de las consultas sobre la base de datos física.
El componente de optimización de consultas asume esta responsabilidad. Sin embargo, se pueden mejorar estas decisiones de optimización al comprender los principios de este proceso.
Características de Optimización de consultas
1) Análisis de sintaxis y semántica
2) Transformación de la consulta
3) Evaluación del plan de accesos
4) Ejecución del plan de acceso
Análisis de sintaxis y semántica
Encontrar errores de sintaxis y semántica simples.
- Mal uso de palabras claves del lenguaje.
- Mal uso de nombre de tablas y atributos.
- Comparación de atributos que tienen distintos tipos de datos.
Para detectar errores de semántica utiliza las definiciones tal como se almacenan en el diccionario de datos
Transformación de la consulta
Transforma la consulta en un formato simplificado y estandarizado utilizando álgebra relacional.
- Se eliminan partes redundantes de una expresión
- Se eliminan enlaces (join) de atributos que no se utilizan en la consulta.
- Las operaciones de restricción (selección del Algebra Relacional) se combinan para que se puedan probar de manera conjunta.
- Las operaciones de proyección y restricción se mueven para que estén antes de las operaciones de enlace (join) para eliminar los atributos y registros innecesarios antes de las operaciones de enlaces costosas.
- Las operaciones de productos cartesianos se transforman en operaciones de enlace si existen condiciones en la cláusula where.
Evaluación del plan de accesos
- Se implementa la consulta reacomodada.
- El plan de accesos indica la implementación de la compusta como operaciones en archivos. Se utilizan índices para mejorar el acceso.
- Los algoritmos varían debido al orden de los enlaces y es en estos casos que el programador deberá conocerlos para evitar el tiempo que le demande al optimizador de la consulta la selección del mejor algoritmo.