Objetivos y Temario CURSO SQL. FUNDAMENTOS DEL LENGUAJE

 OBJETIVOS Este curso sobre los fudamentos del lenguaje SQL se dirige a desarrolladores e informáticos principiantes que deban trabajar con un Sistema Gestor de Bases de Datos Relacionales (SGBDR) para almacenar y manipular datos. Su objetivo es describir los principales comandos más utilizados del lenguaje SQL (independientemente de las variaciones realizadas por los editores de los diferentes SGBDR) para permitir al lector hacerse cargo rápidamente de una base de datos relacional y ser capaz de crear tablas, de consultarlas, de modificarlas, de insertar y suprimir registros. El curso comienza con una breve historia sobre la creación de la norma SQL y algunas nociones sobre el modelo relacional. A continuación, cada capítulo aborda una subdivisión de SQL; la creación y la manipulación de tablas, y a continuación la gestión de los datos de estas tablas. El autor continúa con las funciones SQL, la seguridad de los datos y las transacciones y acaba abordando temas un poco más complejos como las cargas masivas, las importaciones y exportaciones de tablas, los trigger, el PL/SQL y los errores que se encuentran con más frecuencia.

 TEMARIO

 Introducción   





1. Un poco de historia 2. Las normas SQL 3. Descripción rápida del modelo relacional o 3.1 Principales conceptos del modelo relacional o 3.2 Principales reglas 4. Los operadores en álgebra relacional o 4.1 Unión o 4.2 Intersección o 4.3 Diferencia o 4.4 División o 4.5 Restricción o 4.6 Proyección o 4.7 Producto cartesiano o 4.8 Join o 4.9 Cálculos elementales o 4.10 Cálculo de agregados 5. Los sistemas de gestión de bases de datos que utilizan SQL

 La definición de los datos (LDD) 

1. Los tipos de datos

www.grupocarman.com

OBJETIVOS Y TEMARIO o o o o



 







1.1 Numéricos 1.2 Caracteres 1.3 Fechas y horas 1.4 Los otros tipos de datos  1.4.1 Los otros tipos numéricos  1.4.2 Los otros tipos carácter  1.4.3 Los tipos binarios 2. La creación de las tablas o 2.1 El comando CREATE o 2.2 Los comentarios (COMMENT) o 2.3 Crear una tabla a partir de otra o 2.4 Utilización de sinónimos o 2.5 Las SECUENCIAS 3. La eliminación de tablas o 3.1 El comando DROP 4. La modificación de tablas o 4.1 El comando ALTER o 4.2 Renombrar una tabla (RENAME) 5. Las vistas o 5.1 Por qué utilizar vistas o 5.2 La creación de vistas o 5.3 La eliminación de vistas 6. Los índices o 6.1 Los índices y la norma SQL o 6.2 Los diferentes métodos de organización de los índices o 6.3 La creación de un índice o 6.4 La eliminación de un índice 7. La integridad de los datos o 7.1 La PRIMARY KEY o 7.2 La FOREIGN KEY o 7.3 Los valores por defecto (DEFAULT) o 7.4 El valor NULL o 7.5 La cláusula UNIQUE o 7.6 CHECK o 7.7 Algunos consejos o 7.8 Ejercicios de aplicación o 7.9 Corrección de los ejercicios de aplicación

 La manipulación de los datos (LMD)  

1. Introducción 2. La selección de datos o 2.1 El comando de selección de datos SELECT o 2.2 Las opciones DISTINCT y ALL o 2.3 La utilización de los alias o 2.4 La cláusula WHERE o 2.5 Las uniones  2.5.1 La unión interna  2.5.2 La unión externa  2.5.3 La unión natural  2.5.4 La unión cruzada  2.5.5 Sintaxis de las diferentes formas de unión

www.grupocarman.com

OBJETIVOS Y TEMARIO o o o









2.6 La ordenación (ORDER BY) 2.7 Los agrupamientos (GROUP BY) 2.8 Las funciones utilizadas en un agrupamiento  2.8.1 COUNT (contar filas)  2.8.2 SUM (suma de valores)  2.8.3 MAX y MIN (valores máximo y mínimo)  2.8.4 AVG (promedio)  2.8.5 HAVING o 2.9 La instrucción CASE o 2.10 Resumen de las posibles sintaxis del SELECT o 2.11 Los operadores de conjuntos  2.11.1 El operador UNION  2.11.2 El operador INTERSECT  2.11.3 El operador EXCEPT o 2.12 Cómo hacer una consulta: algunos consejos o 2.13 Ejercicios sobre la selección de datos  2.13.1 Preguntas generales  2.13.2 Ejercicios de aplicación 3. La inserción de datos o 3.1 El comando INSERT o 3.2 Inserción a partir de otra tabla o 3.3 Resumen de la sintaxis del INSERT o 3.4 Ejercicios de inserción de datos 4. La eliminación de datos o 4.1 El comando DELETE o 4.2 El comando TRUNCATE o 4.3 Ejercicios sobre la eliminación de datos 5. La modificación de datos o 5.1 El comando UPDATE o 5.2 Ejercicios sobre la modificación de datos 6. Soluciones de los ejercicios o 6.1 Solución de los ejercicios sobre la selección de datos  6.1.1 Preguntas generales  6.1.2 Ejercicios de aplicación o 6.2 Solución de los ejercicios sobre la inserción de datos o 6.3 Soluciones de los ejercicios sobre la eliminación de datos o 6.4 Solución de los ejercicios sobre la modificación de datos

 Las funciones  



1. Introducción 2. Las funciones numéricas o 2.1 ABS: valor absoluto o 2.2 ASCII: valor ASCII de un carácter o 2.3 COS: coseno - SIN: seno o 2.4 LOG (,): logaritmo de la columna seleccionada en la base indicada o 2.5 MOD(,): módulo o 2.6 ROUND(,[]): redondeo o 2.7 SQRT: raíz cuadrada 3. Las funciones de comparación y de comprobación o 3.1 IN - NOT IN

www.grupocarman.com

OBJETIVOS Y TEMARIO o o o







 

3.2 EXISTS - NOT EXISTS (existencia o no) 3.3 BETWEEN (entre dos valores) 3.4 LIKE (que contiene parte del valor) 4. Las funciones de gestión de fechas y horas o 4.1 Fecha del día: CURRENT_DATE o 4.2 Hora actual o 4.3 Fecha y hora del día: CURRENT_TIMESTAMP o 4.4 Los diferentes formatos de visualización de fechas o 4.5 La manipulación de las fechas y las horas 5. Las funciones con cadenas de caracteres o 5.1 LOWER / UPPER / UCASE / LCASE (minúsculas y mayúsculas) o 5.2 Eliminar los espacios a la derecha o izquierda de una cadena de caracteres: TRIM / LTRIM / RTRIM o 5.3 Transformar un dato numérico o una fecha en caracteres: TO_CHAR o 5.4 Encontrar la posición de una cadena de caracteres en otra cadena: INSTR o 5.5 Agregar caracteres antes o después de una cadena:LPAD / RPAD o 5.6 Extraer parte de una cadena de caracteres: SUBSTR 6. Otras funciones o 6.1 NVL: comprobar si una columna es null o 6.2 Comprobar varios valores: COALESCE o 6.3 Comparar dos columnas: NULLIF o 6.4 Cambiar el tipo de una columna: CAST o 6.5 Comprobar el contenido de un dato con DECODE 7. Ejercicios sobre las funciones 8. Solución de los ejercicios sobre las funciones

 La seguridad de los datos (DCL)     



   

1. Introducción 2. Por qué definir derechos 3. Crear un usuario 4. Cambiar la contraseña de un usuario 5. Asignar derechos (GRANT) o 5.1 Asignar derechos de manipulación de una tabla o 5.2 Asignar derechos sobre los objetos de la base o 5.3 Otros derechos 6. Eliminar derechos (REVOKE) o 6.1 Eliminar derechos sobre la manipulación de una tabla o 6.2 Eliminar derechos sobre los objetos de la base 7. Utilización de los roles 8. Eliminar un rol 9. Ejercicios sobre la seguridad 10. Solución de los ejercicios

 El control de transacciones (TCL) 

1. La problemática de los accesos concurrentes o 1.1 Ilustración de accesos concurrentes  1.1.1 Ejemplo 1: actualizaciones simultáneas  1.1.2 Ejemplo 2: incoherencia de los datos después de una modificación de otro usuario o 1.2 El mecanismo de bloqueo www.grupocarman.com

OBJETIVOS Y TEMARIO 

2. Concepto de transacción o 2.1 Definición de una transacción o 2.2 Cómo evitar las incoherencias de datos o 2.3 Implementación de un bloqueo  2.3.1 READ UNCOMMITTED  2.3.2 READ COMMITTED  2.3.3 REPEATABLE-READ  2.3.4 SERIALIZABLE  2.3.5 Sintaxis o 2.4 Implementación de un bloqueo aplicativo  2.4.1 Cómo saber los bloqueos que tiene una tabla  2.4.2 Cómo eliminar bloqueos que tenga una tabla o 2.5 Validación de las modificaciones (COMMIT) o 2.6 Cancelación de las modificaciones (ROLLBACK) o 2.7 Los puntos de sincronización (SAVEPOINT) o 2.8 Ejemplo de utilización de los puntos de sincronización

 Para ir más lejos  

 









1. Carga de datos masiva con SQL*Loader 2. La importación y exportación de tablas con Oracle o 2.1 La exportación de tablas o 2.2 La importación de tablas 3. Los sub-SELECT 4. Algunos conceptos de rendimiento o 4.1 Utilización de EXPLAIN PLAN o 4.2 Utilización del paquete DBMS_XPLAN.DISPLAY o 4.3 Optimización de las consultas mediante la utilización de HINTS o 4.4 Conclusión 5. Presentación de SQL*Plus o 5.1 Utilización estándar o 5.2 El comando SPOOL o 5.3 Los comandos SET  5.3.1 Los comandos SET que afectan a la visualización de los datos  5.3.2 Los comandos SET de entorno o 5.4 La utilización de variables en SQL*Plus o 5.5 La llamada a procedimientos almacenados 6. Presentación de los TRIGGER o 6.1 Creación de un TRIGGER de control y actualización en una tabla o 6.2 Creación de un TRIGGER después de las actualizaciones 7. Las tablas del sistema (Oracle) o 7.1 Tablas del sistema para tablas y columnas  7.1.1 Oracle  7.1.2 MySQL o 7.2 Tablas del sistema para índices y vistas  7.2.1 Oracle  7.2.2 MySQL o 7.3 El resto de tablas del sistema  7.3.1 Oracle  7.3.2 MySQL 8. Algunos scripts útiles o 8.1 Saber el tamaño real de una columna

www.grupocarman.com

OBJETIVOS Y TEMARIO o o o o o

8.2 Buscar y eliminar duplicados en una tabla 8.3 Extraer los datos de una tabla en un fichero plano 8.4 Mostrar el contenido de una tabla sin conocer su estructura 8.5 Generar comandos de inserción en una tabla a partir de un fichero Excel 8.6 Procedimiento almacenado para eliminar filas en una tabla

 Presentación de PL/SQL    

     

1. Introducción 2. Sintaxis general 3. Los cursores 4. Los bucles FOR, WHILE, LOOP y la estructura condicional CASE o 4.1 El WHILE o 4.2 El FOR o 4.3 El LOOP o 4.4 El CASE 5. Las excepciones más utilizadas 6. Creación de un procedimiento almacenado 7. Creación de una función almacenada 8. Los packages 9. Compilación de un procedimiento, de una función o de un paquete 10. Eliminación de un procedimiento, de una función o de un paquete

 Los errores más comunes    

1. Introducción 2. Sobre el acceso a los datos (LDD/LMD) 3. Sobre las transacciones y las sesiones (TCL/DCL) 4. Sobre los componentes internos (memoria, sistema)

www.grupocarman.com