Temario SQL Plus
1. SQL Plus. Introduccin
1.1 Qu es SQL Plus?
1.2 Entorno TOAD
1.3 Reglas de legibilidad y estndares de programacin.
2. Consultas bsicas
2.1 El esquema de prueba de Scott.
2.2 Extraccin de informacin de la base de datos mediante el estatuto SELECT
Posicin de columnas
Alias de columnas
Ordenamiento de datos mediante la clusula ORDER BY
2.3 Filtrado de renglones con la clusula WHERE
2.4 Operadores
Operadores relacionales
Operadores lgicos
Operadores matemticos
Operador de pertenencia a conjuntos IN (NOT IN)
Manejo de comodines mediante el uso de LIKE
Manejo de rango de datos mediante BETWEEN AND
Operaciones de concatenacin
Operaciones de fechas
2.5 Operadores de conjuntos
UNION [ALL]
INTERSECT
MINUS
2.6 Desplegado de informacin selectiva mediante la estructura CASE
2.7 Funciones predefinidas de Oracle
Funciones carcter
Funciones de fecha
Funciones numricas
Funciones de conversin de datos
Funciones adicionales: NVL, DECODE, IFNULL
2.8 Manejo de fechas
Fechas y horas
Operaciones con fechas y horas
Consejos prcticos
2.9 Pseudo columnas
ROWNUM
ROWID
3. Funciones de agrupamiento
3.1 La importancia de la creacin de informes.
3.2 Descripcin de las funciones de grupo
3.3 Uso de DISTINCT
3.4 Funciones de grupo ms usuales
3.5 Manejo de valores nulos en funciones de grupo
3.6 Creacin de grupos de datos mediante la clusula GROUP BY
3.7 Exclusin de grupos de datos con la clusula HAVING
4. Consultas con informacin de varias tablas (JOINS)
4.1 El fundamento de las bases de datos relacionales.
4.2 Cmo se conforma un JOIN?
Producto cartesiano
4.3 Sintaxis de JOIN con operador coma
4.4 Alias de tablas
4.5 Diferentes tipos de JOIN
JOIN
CROSS JOIN
NON EQUAL JOIN
NATURAL JOIN
LEFT, RIGHT y FULL OUTER JOIN
4.6 Diferencia entre sintaxis estandarizada y no estandarizada
5. Subconsultas
5.1 Visin general del manejo de subconsultas
5.2 Subconsultas en la clusula WHERE
5.3 Subconsultas en la clusula FROM
5.4 Subconsultas en la clusula SELECT
5.5 Operador de pertenencia a conjuntos EXISTS (NOT EXISTS)
5.6 Manejo de subconsultas que involucran varias columnas
5.7 Operadores ANY y ALL en subconsultas con varias columnas
6. Manipulacin de la informacin de base de datos
6.1 Lenguaje de Manipulacin de Datos DML
6.2 Insercin de datos en una tabla mediante el estatuto INSERT
6.3 Insercin de datos mediante una consulta
6.4 Manejo de subconsultas durante la insercin de datos
6.5 Actualizacin de datos en una tabla mediante el estatuto UPDATE
6.6 Manejo de subconsultas durante la actualizacin de datos
6.7 Eliminacin de renglones de una tabla mediante el estatuto DELETE
6.8 Manejo de subconsultas durante para la eliminacin de datos
6.9 Funciones de Oracle para conocer el nmero de renglones afectados
7. Manejo de transacciones
7.1 Concepto e importancia de las transacciones
7.2 Hacer los cambios permanentes mediante COMMIT
7.3 Deshacer los cambios mediante ROLLBACK
7.4 Manejo de transacciones parciales mediante el uso de SAVEPOINT
8. Administracin de transacciones concurrentes
8.1 Concepto de concurrencia y bloqueos.
8.2 Bloqueos implcitos.
8.3 DEAD LOCKS o bloqueos muertos
8.4 Bloqueo explcito mediante SELECT FOR UPDATE
8.5 Evitar un DEAD LOCK mediante la clusula NOWAIT
9. Creacin, modificacin y borrado de objetos
9.1 Lenguaje de Definicin de Datos DDL
9.2 Creacin de tablas mediante CREATE TABLE
9.3 Tipos de datos
9.4 Valores por default
9.5 Constraints
PRIMARY KEY
FOREIGN KEY
NOT NULL
CHECK
9.6 Creacin de tablas con estructura similar a una existente mediante una consulta
9.7 Modificacin de la estructura de tablas mediante ALTER TABLE
9.8 Borrado de tablas mediante DROP TABLE
9.9 Comentarios en tablas
9.10 Manejo de ndices
Concepto e importancia
Creacin mediante CREATE INDEX
Eliminacin mediante DROP INDEX
9.11 Vistas
Concepto e importancia
Creacin mediante CREATE VIEW
Incorporacin de vistas dentro de consultas
Eliminacin mediante DROP VIEW
9.12 Generacin de nmeros secuenciales
Creacin mediante CREATE SEQUENCE
Las pseudo columnas LASTVAL y NEXTVAL
Utilizacin en SELECT e INSERT
Modificacin del comportamiento de la secuencia mediante ALTER SEQUENCE
Eliminacin mediante DROP SEQUENCE
9.13 Referencia a objetos con distinto nombre mediante el uso de sinnimos
Concepto e importancia
Creacin mediante CREATE SYNONYM
Uso de objetos a travs de sinnimos
Eliminacin mediante DROP SYNONYM
10. Control de acceso y definicin de privilegios
10.1 Control de acceso de usuario
10.2 Privilegios de sistema y privilegios de objeto
10.3 Creacin de sesiones de usuario y otorgamiento de privilegios de sistema
10.4 Uso de roles para definir grupos de usuarios
10.5 Creacin y otorgamiento de privilegios a un rol
10.6 Otorgamiento y revocacin de privilegios de objeto
10.7 Cambio de contrasea
10.8 Uso de enlaces de base de datos
11. Diccionario de datos de Oracle
11.1 Informacin de usuario, de DBA y todas.
11.2 Informacin de objetos
11.3 Informacin de tablas, columnas y constraints
11.4 Informacin del cdigo
11.5 Aprovechamiento del diccionario de datos para realizar scripts
12. Consultas avanzadas: Representaciones jerrquicas
12.1 Modelado de estructuras jerrquicas en una sola tabla
12.2 Modelado de estructuras jerrquicas con varias tablas
12.3 Consultas jerrquicas simples
12.4 La pseudo columna LEVEL y su uso para formateo de reportes
12.5 Consultas jerrquicas con llaves compuestas
12.6 Ordenamiento de los registros de subniveles
12.7 Evitando ciclos mediante NOCYCLE
12.8 Desplegado del registro raz y de la ruta
13. Consultas avanzadas: Subconsultas
13.1 Subconsultas anidadas para resolver la informacin gradualmente
13.2 Subconsultas para resolver reportes matriciales
13.3 Diferentes orgenes de informacin con subconsultas en la clusula FROM
14. Consultas avanzadas: Reportes avanzados con cubos
14.1 Una revisin ms detallada de las clusulas GROUP BY y HAVING
14.2 Clculo de totales agregados mediante CUBE y ROLLUP
14.3 Determinacin de grupos subtotales mediante las funciones GROUPING
14.4 Clculo de varios agrupamientos con GROUPING SETS
15. Optimizacin de consultas
15.1 Elementos que alentan las consultas
15.2 Monitoreo de consultas
Funciones
Conversiones de datos
SELECT *
15.3 Haciendo uso del Plan de ejecucin
15.4 Funciones
15.5 Aprovechamiento de los ndices
Asegurarse de utilizar ndices
Orden de las condiciones
Evitar el uso de funciones
15.6 IN vs. EXISTS
15.7 DECODE vs CASE
15.8 Llaves numricas vs. no numricas
15.9 Eliminacin de JOINS innecesarios
15.10 Reduccin del conjunto de datos
Condiciones en JOIN vs condiciones en WHERE
15.11 Eliminacin de subconsultas en clusulas SELECT, GROUP BY, HAVING
15.12 Casos especiales
UPDATE vs DELETE & INSERT. Consideraciones
TRUNCATE vs DELETE. Consideraciones
15.13 Traduccin de consultas antiguas a sintaxis actualizada