Capacitación | Cursos
|
Programación de PL/SQL para Oracle
Descripción
Este curso presenta una introducción a PL/SQL y ayuda a los alumnos a entender las ventajas de este potente lenguaje de programación. En esta clase, los alumnos aprenderán a crear bloques PL/SQL de código de aplicación que se pueden compartir en distintos formularios, informes y aplicaciones de gestión de datos. También aprenderán a crear procedimientos almacenados, funciones y bloques PL/SQL anónimos. Obtendrán información sobre la declaración de variables y la interrupción de excepciones. Los alumnos también aprenderán a desarrollar procedimientos almacenados, funciones, paquetes y disparadores de base de datos. Además, aprenderán a gestionar unidades de programa PL/SQL y dependencias, así como a manipular objetos grandes y a utilizar algunos de los paquetes suministrados por Oracle. Los alumnos utilizarán iSQL*Plus para desarrollar estas unidades de programa. Las demostraciones y los ejercicios prácticos refuerzan los conceptos fundamentales.
Objetivos
- Crear procedimientos y funciones simples
- Manejar errores en tiempo de ejecución
- Utilizar construcciones de programación PL/SQL y controlar de forma condicional el flujo de código (bucles, estructuras de control y cursores explícitos)
- Escribir SQL dinámico para mejorar la flexibilidad del código
- Clasificar y utilizar los paquetes PL/SQL suministrados por Oracle para generar salida en pantalla, salida de archivo, salida Web y salida de correo
- Describir las funciones y la sintaxis de PL/SQL
- Crear disparadores para afrontar los desafíos de negocio
- Gestionar dependencias entre subprogramas PL/SQL
- Escribir código PL/SQL para interactuar con la base de datos
- Planificar trabajos de PL/SQL que se ejecuten de forma independiente
- Diseñar bloques anónimos PL/SQL que se ejecuten de forma eficaz
- Diseñar paquetes PL/SQL para agrupar y contener construcciones relacionadas
Contenido
- Introducción a PL/SQL
- ¿Qué Es PL/SQL?
- Entorno PL/SQL
- Ventajas de PL/SQL
- Visión General de Tipos de Bloques PL/SQL
- Creación y Ejecución de un Bloque Anónimo Simple
- Generación de Salida desde un Bloque PL/SQL
- iSQL*Plus como Entorno de Programación PL/SQL
- Declaración de Identificadores PL/SQL
- Identificación de los Distintos Tipos de Identificadores en un Subprograma PL/SQL
- Uso de la Sección Declarativa para Definir Identificadores
- Enumeración de Usos para Variables
- Almacenamiento de Datos en Variables
- Declaración de Variables PL/SQL
- Escritura de Sentencias Ejecutables
- Descripción de Instrucciones de Sintaxis Básica de Bloque
- Uso de Literales en PL/SQL
- Personalización de Asignaciones de Identificador con Funciones SQL
- Uso de Sentencias y Bloques Anidados
- Referencia a un Valor de Identificador en un Bloque Anidado
- Cualificación de un Identificador con una Etiqueta
- Uso de Operadores en PL/SQL
- Uso de Instrucciones y Sintaxis de Bloque PL/SQL Adecuadas
- Interacción con Oracle Server
- Identificación de las Sentencias SQL que se Pueden Utilizar en PL/SQL
- Inclusión de Sentencias SELECT en PL/SQL
- Recuperación de Datos en PL/SQL con la Sentencia SELECT
- Cómo Evitar Errores mediante Reglas de Nomenclatura al Utilizar Recuperación y Sentencias DML
- Manipulación de Datos en el Servidor mediante PL/SQL
- Concepto de Cursor SQL
- Uso de Atributos de Cursor SQL para Obtener Feedback sobre DML
- Guardar y Desechar Transacciones
- Escritura de Estructuras de Control
- Control del Flujo de Ejecución PL/SQL
- Procesamiento Condicional mediante Sentencias IF
- Sentencias CASE de Procesamiento Condicional
- Manejo de Valores Nulos para Evitar Errores ComunesCreación de Condiciones Booleanas con Operadores Lógicos
- Creación de Condiciones Booleanas con Operadores Lógicos
- Uso de Control Reiterativo con Sentencias de Bucle
- Trabajo con Tipos de Datos Compuestos
- Información sobre Tipos de Datos Compuestos de Registros y Tablas PL/SQL
- Uso de Registros PL/SQL para Mantener Varios Valores de Diferentes Tipos
- Inserción y Actualización con Registros PL/SQL
- Uso de Tablas INDEX BY para Mantener Varios Valores del Mismo Tipo de Datos
- Uso de Cursores Explícitos
- Bucles FOR de Cursor mediante Subconsultas
- Aumento de la Flexibilidad de los Cursores mediante Parámetros
- Uso de la Cláusula FOR UPDATE para Bloquear Filas
- Uso de la Cláusula WHERE CURRENT para Hacer Referencia a la Fila Actual
- Uso de Cursores Explícitos para Procesar Filas
- Atributos de Cursor Explícito
- Cursores y Registros
- Manejo de Excepciones
- Manejo de Excepciones con PL/SQL
- Excepciones Predefinidas
- Interrupción de Errores No Predefinidos de Oracle Server
- Funciones que Devuelven Información sobre Excepciones Encontradas
- Interrupción de Excepciones Definidas por el Usuario
- Propagación de Excepciones
- Uso del Procedimiento RAISE_APPLICATION_ERROR para Informar de Errores en las Aplicaciones
- Creación de Procedimientos Almacenados
- Descripción de subprogramas y bloques PL/SQL
- Descripción de usos de procedimientos
- Creación de procedimientos
- Diferencias entre parámetros formales y reales
- Enumeración de las funciones de los distintos modos de parámetros
- Creación de procedimientos con parámetros y llamada a un procedimiento
- Manejo de excepciones en procedimientos
- Vista de código de origen en el diccionario de datos
- Creación de Funciones Almacenadas
- Descripción de funciones almacenadas
- Enumeración de la sintaxis CREATE OR REPLACE FUNCTION
- Identificación de los pasos para crear una función almacenada
- Creación de una función almacenada en iSQL*Plus y ejecución de una función almacenada
- Identificación de las ventajas del uso de funciones almacenadas en sentencias SQL
- Identificación de las restricciones de llamada a funciones desde sentencias SQL
- Descripción de las diferencias entre procedimientos y funciones
- Creación de Paquetes
- Enumeración de las ventajas del uso de paquetes PL/SQL
- Diferencias entre especificación de paquete y cuerpo de paquete
- Creación de paquetes
- Inclusión de construcciones públicas y privadas en un paquete
- Llamada a construcciones públicas y privadas en un paquete
- Eliminación de paquetes
- Uso de Otros Conceptos de Paquete
- Procedimiento de sobrecarga y definiciones de función
- Uso de declaraciones anticipadas
- Creación de un bloque de inicialización de paquete único
- Seguimiento de estado persistente de construcciones en paquetes
- Uso de tablas y registros PL/SQL en paquetes
- Ajuste de código para ocultar el origen
- Uso de Paquetes Suministrados por Oracle en el Desarrollo de Aplicaciones
- Enumeración de los distintos usos para los paquetes suministrados por Oracle
- Reutilización de código preempaquetado para realizar diversas tareas de desarrollador a DBA
- Uso del comando DESCRIBE para ver las especificaciones de paquete y la sobrecarga
- Descripción del funcionamiento de DBMS_OUTPUT
- Uso de UTL_FILE para dirigir la salida a archivos del sistema operativo
- Uso del paquete HTP para generar una página Web simple
- Descripción de las funciones principales de UTL_MAIL
- Llamada al paquete DBMS_SCHEDULER para planificar la ejecución del código PL/SQL
- SQL Dinámico y Metadatos
- Descripción del uso de SQL dinámico nativo
- Enumeración del flujo de ejecución de SQL
- Escritura de SQL dinámico mediante la sintaxis EXECUTE IMMEDIATE
- Escritura de SQL dinámico con el paquete DBMS_SQL
- Generación de DDL a partir de metadatos mediante el paquete DBMS_METADATA
- Consideraciones de Diseño para Código PL/SQL
- Estandarización de constantes con un paquete de constantes
- Estandarización de excepciones con un paquete de excepciones
- Escritura de código PL/SQL que utiliza subprogramas locales
- Uso de la indicación del compilador NOCOPY para transferir parámetros por referencia
- Uso de la indicación PARALLEL ENABLE para la optimización
- Uso del pragma AUTONOMOUS TRANSACTION para ejecutar transacciones independientes dentro de una única transacción
- Definición de la directiva AUTHID para ejecutar programas con los privilegios del usuario que realiza la llamada en lugar del usuario de creación
- Uso de enlaces en bloque para operaciones de varias filas
- Gestión de Dependencias
- Descripción de objetos dependientes y de referencia
- Seguimiento de dependencias procedurales con vistas del diccionario
- Predicción del efecto del cambio de un objeto de base de datos en los procedimientos y funciones almacenados
- Gestión de dependencias de procedimiento locales y remotas
- Manipulación de Objetos Grandes
- Descripción de un objeto LOB
- Creación y mantenimiento de tipos de datos LOB
- Diferencias entre LOB internos y externos
- Uso del paquete PL/SQL DBMS_LOB para controlar los LOB
- Descripción del uso de LOB temporales
- Creación de Disparadores
- Descripción de los distintos tipos de disparadores
- Descripción de disparadores de base de datos y su uso
- Creación de disparadores de base de datos
- Descripción de reglas de arranque de disparadores de base de datos
- Eliminación de disparadores de base de datos
- Aplicaciones para Disparadores
- Creación de disparadores de base de datos y de eventos del sistema
- Creación de disparadores en sentencias DDL
- Uso de la sentencia CALL en disparadores para llamar a procedimientos
- Explicación de las reglas para la lectura y escritura de tablas con disparadores
- Descripción de supuestos de aplicación de negocio para la implementación con disparadores
- Gestión de código de disparador
- Comprensión e Influencias en el Compilador PL/SQL
- Descripción de compilación como nativo y compilación interpretada
- Enumeración de las funciones de la compilación como nativo
- Cambio entre compilación como nativo y compilación interpretada para el código PL/SQL compilado
- Definición de parámetros para controlar aspectos de la compilación PL/SQL
- Escritura de una consulta para recuperar información de vistas del diccionario sobre el modo de compilación del código PL/SQL
- Explicación del mecanismo de advertencias del compilador
- Enumeración de los pasos para utilizar advertencias del compilador
- Uso de DBMS_WARNING para implementar advertencias del compilador
|