Pl/sql

Solo disponible en BuenasTareas
  • Páginas : 9 (2066 palabras )
  • Descarga(s) : 4
  • Publicado : 24 de abril de 2010
Leer documento completo
Vista previa del texto
PL/SQL
Procedural Language/Structured Query Language

Introducción
 ¿Que hace que PL/SQL sea único?


la integración que tiene con SQL.

 La facilidad y naturalidad con que se puede incrustar SQL

en PL/SQL, mas que en cualquier otro lenguaje.

 PL/SQL es ideal para escribir largos y complejos programas

que deben interactuar con la Base de Datos ORACLE.

Diferencia entreSQL y PL/SQL
 SQL y PL/SQL son completamente diferentes.  SQL es un lenguaje limitado permite interactuar con la BD,

manipulando objetos (DDL) y datos (DML).

 PL/SQL tiene características que tiene cualquier lenguaje de

programación normal, ejemplo instrucciones como IF..THEN. tiene con SQL.

 PL/SQL tiene como principal ventaja la integración que

ORACLE PL/SQL
ORACLE PL/SQLProcedural Language/Structured Query Language.

 Apareció por primera vez en ORACLE versión 6 (1988).

 Es un entorno de programación que reside directamente

en la BD.

 Lenguaje de programación sencillo similar a C y ADA.  Lenguaje procedimental que amplia la funcionalidad de

SQL añadiendo estructuras habituales en otros lenguajes: variables y tipos, estructuras de control,procedimientos y funciones, …

Creación de Programas
 Se pueden crear con cualquier editor y ejecutarlos desde El

prompt del SQL*PLUS con START o @.
 Los archivos creados serán de texto y tendrán la extensión

.sql.
 Para que un archivo se ejecute correctamente debe tener en

su última línea el símbolo /.

Conceptos Básicos de PL/SQL
Estructura de Bloques
 La unidad básica enPL/SQL es el bloque.  Todos los programas PL/SQL están compuestos por

bloques, que pueden definirse de forma secuencial o estar anidados.

 Normalmente cada bloque realiza una unidad lógica de

trabajo en el programa, separando así unas tareas de otras.

Conceptos Básicos de PL/SQL Estructura de Bloques
Hay diferentes tipos de bloques:
 Anónimos (Anonymous blocks).- se construyen deforma dinámica

y se ejecutan una sola vez.

 Con nombre (Named blocks).- son bloques con nombre, que al

igual que el anterior se construyen, generalmente, de forma dinámica y se ejecutan una sola vez. en la BD. No suelen cambiar después de su construcción y se ejecutan múltiples veces mediante una llamada call.

 Subprogramas.- procedimientos, paquetes o funciones almacenados

Disparadores (Triggers).- son bloques con nombre que también se

almacenan en la BD. Tampoco suelen cambiar después de su construcción y se ejecutan varias veces. Se ejecutan ante algún suceso de disparo, que será una orden del lenguaje de manipulación de datos (INSERT, UPDATE o DELETE) que se ejecuta sobre una tabla de la BD.

Estructura de Bloques
Todos los bloques tienen tres seccionesdiferenciadas:
 Sección Declarativa:


Donde se localizan todas las variables, cursores y tipos usados por el bloque. También se pueden declarar en esta sección las funciones y procedimientos locales. Estos subprogramas estarán disponibles solo para ese bloque. Donde se lleva a cabo el trabajo del bloque. En esta sección pueden aparecer tanto órdenes SQL (LMD y LCD) como órdenes procedimentales. Elcódigo de esta sección no se ejecutará a menos que ocurra un error.

 Sección Ejecutable:


 Sección Errores:


Estructura de Bloques
DECLARE Declaración de variables y subprogramas Esta sección es opcional BEGIN Sección ejecutable, se incluyen las sentencias de SQL y procedimientos Es la sección principal del bloque y es obligatoria (al menos debe haber una orden ejecutable) EXCEPTIONZona de excepción, se pueden colocar aquí las sentencias en caso de error, esta sección es opcional END;

Ejemplos Básicos
Declare -- Declaraciones varias Begin -- Cuerpo del programa End; Declare str_texto varchar2(30):=‘Hola Mundo’; Begin dbms_output.put_line(str_texto); End;

Reglas y Convenciones del Lenguaje
Unidades Léxicas:
 Secuencia de caracteres


Conjunto de caracteres...
tracking img