capitulo 16.doc

57
16. Declaración de variables _____________________________________________________________ ____________ ORACLE SQL y PL/SQL 1

Upload: lupita0816

Post on 29-Sep-2015

75 views

Category:

Documents


2 download

TRANSCRIPT

Diapositiva 1

16. Declaracin de variables

Esta leccin presenta las reglas y la estructura bsica para la escribir y ejecutar bloques de cdigo PL/SQL. Tambin muestra cmo declarar variables y asignarles un tipo de dato.

Estructura del bloque PL/SQL

PL/SQL es un lenguaje estructurado basado en bloques, queriendo decir con esto, que los programas pueden ser divididos en bloques lgicos. Un bloque de PL/SQL comprende tres secciones: declarativa (opcional), ejecutable (requerido), y de excepciones (opcional). Slo las llaves BEGIN y END son requeridas. Puede declarar y usar variables locales dentro de los bloques. Las condiciones de error (conocidas como excepciones) pueden ser manejadas especficamente dentro del bloque definido para ellas. Puede almacenar y cambiar valores dentro de un bloque de PL/SQL; declarndose y refirindose a variables y a otros identificadores. La siguiente tabla describe las tres secciones del bloque.

Ejecutar sentencias y bloques PL/SQL desde SQL*Plus

Coloque un punto y coma (;) en el final de una declaracin SQL O PL/SQL. Coloque una diagonal (/) para correr un bloque PL/SQL annimo en el buffer SQL. Cuando el bloque es ejecutado satisfactoriamente, sin errores manejados o errores compilados, el mensaje de salida debera ser el siguiente: PL/SQL proceduresuccessfully completed Coloque un punto (.) para cerrar el buffer de SQL*Plus. Un bloque de PL/SQL es tratado como una sla sentencia en el buffer, y los smbolos ; no cierran el buffer.

Nota: en PL/SQL, un error es llamado excepcin.La palabras clave DECLARE, BEGIN, y EXCEPTION no son seguidas por un punto y coma. Sin embargo, END y todas las otras sentencias PL/SQL requieren del punto y coma para terminar la sentencia. Puede acomodar sentencias juntas sobre la misma lnea. Sin embargo, no se recomienda este mtodo por motivos de claridad o correccin.Tipos de Bloques

Cada unidad de PL/SQL se comprende de uno a ms bloques. Estos bloques pueden estar enteramente separados o anidados dentro de otros. Las unidades bsicas (procedimientos y funciones, tambien conocidos como subprogramas, y los bloques annimos) son bloques lgicos programas PL/SQL Estos que pueden contener cualquier nmero de subbloques anidados. Por lo tanto un bloque puede representar una pequea parte de otro bloque, que a su vez puede ser la parte de la unidad entera de cdigo. De los dos tipos de construcciones PL/SQL disponibles, bloques annimos y subprogramas, slo los bloques annimos son cubiertos en este curso. Bloques annimosLos bloques annimos son bloques sin nombre. Son declarados en un punto de una aplicacin donde deben ser ejecutados y son pasados al motor de PL/SQL para la su ejecucin en tiempo real. Puede integrar un bloque annimo dentro de un programa de precompilador, dentro de SQL*Plus o del Server Manager. Los Triggers son componentes de Oracle Developer y consisten en tales bloques.Tipos de Bloques (Continuacin)

Subprogramas

Los subprogramas son bloques de PL/SQL con nombres que pueden tomar parmetros y pueden ser invocados. Puede declararlos como procedimientos o como funciones. Generalmente se usa un procedimiento para realizar una accin y una funcin para calcular un valor. Puede almacenar subprogramas en el servidor o a nivel de aplicacin. Usando componentes de Oracle Developer (Forms, Reports, y Graphics) puede declarar procedimientos y funciones como parte de la aplicacin (una forma o reporte), y llamar otros procedimientos, funciones, y triggers (ver la nueva pagina) dentro de la misma aplicacin siempre que sea necesario.Note: Una funcin es similar a un procedimiento, a excepcin de que la funcin debe regresar un valor.

Constructores de Programa

La siguiente tabla muestra una variedad de diferentes construcciones de programa de PL/SQL que se usan el un bloque de PL/SQL bsico. Estn disponibles dependiendo del ambiente donde son ejecutados.

Uso de Variables

Con PL/SQL puedes declarar variables y usarlas con sentencias SQL o sentencias de PL/SQL en cualquier lugar donde una expresin pueda ser usada.

Almacenamiento temporal de datosLos datos pueden ser almacenados temporalmente en una o ms variables para validar las entradas de datos y continuar ms adelante con el proceso de flujo de datos.Manipulacin de valores almacenadosLas variables pueden ser usadas para calcular y manipular otros datos sin accesar a la base de datos.

ReutilizabilidadUna vez declaradas, la variables pueden ser usadas repetidamente con una aplicacin simple para referenciarlas en otras sentencias, incluyendo otras sentencias declarativas.Uso de Variables (Continuacin)

Facil de mantenerSe puede usar %TYPE y %ROWTYPE (ms informacin sobre %ROWTYPE se cubre en una leccin posterior) para declarar variables, basando las declaraciones en las definiciones de columnas de la base de datos. Las variables de PL/SQL o las variables de cursor declaradas previamente dentro del alcance actual, pueden tambin utilizar los atributos %TYPE y %ROWTYPE como especificaciones del tipo de datos. Si una definicin subyacente cambia, la declaracin de la variable cambia por consiguiente en tiempo ejecucin. Esto proporciona independencia a los datos, reduce costos de mantenimiento, y permite que los programas se adapten mientras la base de datos cambia para resolver nuevas necesidades del negocio.Manejo de variables en PL/SQL

Declare e inicialice las variables dentro de la seccin declarativa.Puede declarar variables en la seccin declarativa de cualquier bloque de PL/SQL, subprograma, o paquete. Las declaraciones asignan un espacio de almacenamiento para un valor, especifican el tipo de dato, y nombrar la posicin de almacenamiento para que se le pueda hacer referencia. Las declaraciones tambin pueden asignar un valor inicial e imponer un constraint de tipo NOT NULL.

Asigne nuevos valores a la variable dentro de la seccin ejecutable.

El valor existente de la variable se sustituye por el nuevo.

Debe declarar una variable antes del referirse ella en otras sentencias, inclus de otras sentencias declarativas.

Pase los valores del subprograma de PL/SQL con parmetros.

Manejo de variables en PL/SQL (Continuacin)

Hay tres tipos de parmetros, In (default), OUT, e IN OUT. Use el parmetro IN para pasar valores al subprograma llamado. Use el parmetro OUT para devolver valores del subprograma. Y use el parmetro IN OUT para pasar valores iniciales al subprograma llamado y devolver los valores actualizados al que hace la peticin. Los parmetros del subprograma IN y OUT son cubiertos en el curso de Unidades de Programacin de PL/SQL. Vea los resultados de un bloque PL/SQL a travs de las variables de salida. Puede usar variables de referencia para la entrada o salida de las sentencias de manipulacin de datos SQL. Tipos de Variables

Todas las variables de PL/SQL un tipo de datos asociado, que especifican un formato de almacenamiento, constraints, y rangos vlidos de valores. PL/SQL suporta cuatro categoras de tipos de datos escalar, compuesto, de referencia, and LOB (objetos grandes) que puede usar para declarar variables, constantes, y apuntadores.El tipo de dato escalar aloja un solo valor. Los principales tipos de datos corresponden a los mismos tipos de columnas de las tablas del servidor de Oracle; PL/SQL tambin permite variables Booleanas. Los tipos de datos compuestos como registros permiten los definir un conjunto de datos para que puedan ser manipulados en bloques PL/SQL. Los tipos de datos compuestos son brevemente mencionados en este curso.Tipos de Variables (Continuacin)

Los tipos de referencia almacenan valores llamados apuntadores, que apuntan a otros elementos del programa. Los tipos de datos de referencia no son cubiertos en este curso.

Los tipos de datos LOB, almacenan valores llamados localizadores, que especifican la localizacin de los objetos grandes (imgenes por ejemplo) y que son almacenados fuera la base de datos. Los tipos de datos LOB slo se mencionan brevemente en este cursoLas variables No-PL/SQL incluyen variables declaradas en programas del precompilador, representan elementos en aplicaciones de Forms, y variables host de SQL*PLUS.

Las variables de sustitucin en SQL*PLUS permiten almacenar y editar sintaxis de porciones de comandos antes de correrlos. Estas son verdaderas variables de host, las que usted puede usar para pasar valores en tiempo ejecucin, en nmero o en carcter, a un bloque de PL/SQL. Debe escribir el smbolo : antes del nombre de la variable, al referirse a este tipo de identificadores,.Tipos de Variables

Ejemplos de las diferentes tipos de datos de variables en la diapositiva:TRUE representa un valor tipo Boolean.

25-OCT-99 representa un tipo DATE.

La fotografa represente un tipo BLOB.

El texto de un discurso representa un tipo LONG RAW.

256120.08 representa un tipo de dato NUMBER con precisin.

La pelcula representa a tipo BFILE.

El nombre de la ciudad representa un tipo VARCHAR2.

Declarando Variables PL/SQL

Tiene que declarar todos las variables PL/SQL dentro de la seccin de declaracin antes de referirse a ellas dentro del bloque de PL/SQL. Tiene la opcin para asignar un valor inicial. No tiene que asignar un valor a una variable para declararla. Si se refiere a otras variables en una declaracin, debe estar seguro declararlos separadamente en una declaracin previa.En la sintaxis,

identifier es el nombre de la variable.

CONSTANT Indica que no puede cambiar el valor de la variable; todos las variables de tipo constant deben ser inicializadas.

datatype es un tipo de datos escalar, compuesto, de referencia, or LOB (en este curso solo veremos escalar y compuesto).

NOT NULLIndica que la variable debe contener un valor; todas las variables NOT NULL deben ser inicializada.

expr es cualquier expresin de PL/SQL que pueda ser un literal, otra variable, o una expresin que involucre procedimientos o funciones.

Reglas

La expresin asignada puede ser un literal, otra variable, o una expresin que implica a operadores y funciones.

Nombre al identificador segn las mismas reglas usadas para objetos de SQL.

Puede usar convenciones de nombramiento por ejemplo, v_name para representar una variable y c_name para representar una constante.

Inicialice la variable con una expresin a travs del operador de asignacin (:=) o, su equivalente, la palabra reservada DEFAULT. Si no asigna un valor inicial, la variable nueva contiene el valor NULL. Si usa el constraint NOT NULL, debe asignar un valor.

Declare slo un identificador por lnea de cdigo ya que es ms fcil de leer y mantener.

En declaraciones de constantes, la palabra clave CONSTANT debe preceder del tipo de dato especificado. La declaracin siguiente nombra una constante de tipo REAL y le asigna el valor de 50000. Una constante debe ser inicializada en su declaracin; si no lo hace, obtendr un error de compilacin cuando la declaracin es compilada. Reglas de Nombramiento

Dos objetos pueden tener el mismo nombre, con tal de que sean definidos en bloques diferentes. Donde los objetos coexistan, slo el objeto declarado en el bloque actual puede ser usado.

No debera escoger el mismo nombre para una variable, que el nombre de columnas de la tabla usada en el bloque. Si existen variables PL/SQL en declaraciones SQL y tienen el mismo nombre que una columna, el Servidor de Oracle asume que la columna es referida.Aunque el ejemplo de cdigo de la diapositiva corre sin ningn problema, el cdigo se escribe usando el mismo nombre para una tabla de base de datos y el nombre variable, por tanto no es fcil de leer ni es fcil de mantener.Considere adoptar una convencin de nombramiento para varios objetos como el ejemplo siguiente. Usando v_ como un prefijo que representa la variable, y g_ que representa la variable global, esto evita tener conflictos con objetos de la base de datos.

Nota: los nombres de los identificadores no deben ser ms de 30 caracteres. El primer carcter debe ser una letra y los restantes pueden ser letras, nmeros, smbolos especiales.Asignando valores a una variable

Para asignar o reasignar un valor a una variable, escribe una sentencia de asignacin PL/SQL. Explcitamente debes llamar la variable que va a recibir el nuevo valor a la izquierda del operador de asignacin (:=).

En la sisntaxis,

identifieres el nombre de la variable escalar.exprpuede ser una variable, literal, o una llamada a funcin, pero no una columna de la base de datos.

Los ejemplos de asignacin de variables son definidos como lo siguiente:

Establezca el salario mximo identificado en V_MAX_SAL, a la variable del salario actual V_SAL.

Almacene el nombre "Matt" en el identificador v_ename

Asignando valores a una variable (Continuacin)

Otro modo de asignar valores a variables es seleccionar o traer valores de la base de datos. En el ejemplo siguiente, el servidor de Oracle calcula un bono del 10 % cuando seleccionas el sueldo de un empleado.

Entonces puede usar la variable bonus en otro calculo o insertar su valor en una tabla de la base de datos

Nota: Para asignar un valor de base de datos en una variable, use una sentencia SELECT o FETCH.

Inicializacin de Variables

Las variables son inicializadas cada vez que un bloque o subprograma sea requerido. Por default, las variables son inicializadas en NULL. A no ser que expresamente inicialice una variable, su valor es indefinido. Use el operador de asignacin (: =) para las variables que tienen algn valor.

Debido a que el formato de fecha default dentro del servidor de Oracle podra diferir entre una base de datos y otra, puede querer asignar valores de fecha de una manera genrica, como en el ejemplo anterior.DEFAULT: Puede usar la palabra reservada DEFAULT en lugar de usar el operador de asignacin para inicializar variables. Use DEFAULT para las variables que tienen un valor definido.Inicializacin de Variables (Continuacin)

NOT NULL: Imponga el constraint NOT NULL cuando la variable deba contener un valor. No puede asignar el valor NULL a una variable definida como NOT NULL. El constraint NOT NULL debe ser seguido por una clusula de inicializacin.Nota: Las cadenas de caracteres deben estar encerradas en apstrofes, tal como: --- 'Hello, world'. Si una cadena de caracteres contiene un apstrofe, escriba dos veces el smbolo de apstrofe, por ejemplo, 'Account wasn''t found'.

Tipos de Datos Escalares

Un tipo de dato escalar aloja un solo valor y no tiene componentes internos. El tipo escalar puede ser clasificado en cuatro categoras: nmero, carcter, fecha, y Booleano. Los tipos de dato de carcter y el nmero tienen subtipos que asocian un tipo junto con un constraintPor ejemplo, INTEGER y POSITIVE son subtipos del tipo base llamado NUMBER.

Tipos de Datos Escalares

Tipos de Datos Escalares (Continuacin)

Nota: El tipo de dato LONG es similar a VARCHAR2, pero la longitud mxima de un valor LONG es de 32,760 bytes. Por lo tanto, los valores ms largos que 32,760 bytes no pueden ser seleccionados de una columna de base de datos LONG dentro de una variable LONG de PL/SQL.

Declaracin de variables escalares

Los ejemplos de declaracin variables mostrados en la diapositiva son definidos como lo siguiente:

Declaracin de una variable para almacenar el rol de trabajo del empleado.

Declaracin de una variable para contar las iteraciones de un loop y se inicializa la variable en 0.

Declaracin de una variable para acumular el sueldo total para un departamento e inicializar la variable en 0.Declaracin de una variable para almacenar la fecha de embarque de una orden e inicializar la variable a una semana de hoy.Declaracin de una variable constante para la tarifa fiscal, que nunca debe ser modificada dentro del bloque PL/SQL.Declaracin de la bandera que indica si un dato es vlido o invlido e inicializar la variable en TRUE.El atributo %TYPE

Cuando declara variables PL/SQL que deben alojar valores de columna, debe asegurarse de que la variable es del tipo de datos correcto, incluyendo su precisin. Si esto no es as, un error PL/SQL ocurrir durante la ejecucin.En lugar de escribir cdigo inflexible para definir el tipo de datos y la precisin de una variable, puedes utilizar el atributo %TYPE para declarar la variable a semejanza de una columna de la base de datos o bien de una variable antes definida. El atributo %TYPE se utiliza cuando una variable alojar un dato derivado de la columna de una tabla en la base de datos o si la variable ser destinada a ser de lectura y de escritura. Para usar el atributo en ligar de definir el tipo de datos requerido en la seccin de declaracin, anteponga el nombre de la tabla seguido del nombre de la columna. Si est referenciando una variable previamente definida, anteponga al atributo, el nombre de la variable antes declarada. El atributo %TYPE (Continuacin)

PL/SQL determina cul es el tipo de datos y su presicin cuando el bloque es compilado, para definir a la variable, por lo tanto, siempre ser compatible a la columna que le va a proveer el dato. Esta es una ventaja significativa para escribir o mantener cdigo, debido a que no hay necesidad de estar preocupado, en caso de que el tipo de la columna sea modificado a nivel de la base de datos.

Puedes declarar una variable de acuerdo con la declaracin de otra variable, anteponiendo el nombre de la variable anteriormente definida, al atributo.Declaracin de Variables con el atributo %TYPE

Declare variables que almacenen el nombre de un empleado.

Declare variables que almacenen el balance de una cuenta bancaria, as como el balance mnimo, que se comienza con 10.

El constraint NOT NULL de una columna no se aplica a la variable usando %TYPE. Sin embargo, si declara una variable usando el atributo %TYPE que usa una columna de base de datos definida como NOT NULL, puede asignar el valor NULL a la variable.

Declaracin de variables BOOLEAN

Con PL/SQL puede comparar variables SQL y declaraciones procedurales. Estas comparaciones, llamadas expresiones Booleanas, consisten en expresiones simples o complejas separadas por operadores relacionales. En una declaracin SQL, puede usar expresiones Booleanas para especificar los registros en una tabla que son afectados por las instrucciones de cdigo. En un programa prodecural, las expresiones Booleanas son la base para el control condicional.

NULL significa la falta de valor, un valor inaplicable, o desconocido.Ejemplo

La siguiente expresin produce TRUEDeclara e inicializa una variable Booleana

Tipos de Datos Compuestos

Los tipos de datos compuestos (o colecciones) son tablas, registros, tablas anidadas y VARRAY. Use el tipo RECORD para tratar datos relacionados pero distintos como una unidad lgica. Use el tipo de dato TABLE para referir y manipular una coleccin de datos como un solo objeto. Ambos tipos de datos RECORD Y TABLE son cubiertos detalladamente en una leccin posterior. Los tipos de datos Nested TABLE y VARRAY no son cubiertos en este curso.Variables de Tipo LOB

Con el tipo de dato LOB (objeto grande) de Oracle8 puede almacenar los bloques de datos no estructurados (como el texto, imgenes grficas, vdeos, y sonidos) hasta de 4 gigabytes de tamao. El tipo de dato LOB permite al acceso eficiente, aleatorio a los datos y puede ser atributo de un tipo de objeto. LOBs tambin apoyan el acceso aleatorio de los datos.

El tipo de dato CLOB (objeto grande de caracteres) es usado para almacenar bloques grandes de datos de carcter de bytes simples en la base de datos. El tipo BLOB (objeto grande binario) es usado para almancenar objetos grandes binarios que se encuentra alojados en lnea (en una columna de la base de datos) o fuera de lnea (fuera de la base de datos).

El tipo BFILE (archivo binario) es utilizado para almacenar grandes objetos binarios que se encuentran en un archivo, dentro el sistema de archivos del sistema operativo, es decir, fuera de la base de datos. El tipo NCLOB (objeto grande de caracter de lenguaje nacional) es usado para almacenar grandes bloques de bites simples, o de multibytes de longitud variable. Los datos NCHAR, pueden estar en lnea o fuera de lnea.

Variables Bind

Una variable bind es aquella que se declara en el ambiente host, y se utilizan para pasar valores en tiempo ejecucin a rutinas de PL/SQL, ya sea en tipo NUMBER o de caracter, dentro de un programa de PL/SQL o fuera de el, puedes utilizar este tipo de variables tal como otras que ya hemos repasado anteriormente.

Puedes referenciar variables declaradas en un ambiente de trabajo PL/SQL. Estas variables incluyen aquellas de tipo host, declaradas en los precompiladotes, elementos de texto de las aplicaciones de Developer 2000 echas en forms, y las variables bind del ambiente SQL*Plus.Creando Variables Bind

En el ambiente de SQL*Plus, para declarar una variable bind, debes usar el comando VARIABLE. Por ejemplo, declara una variable de tipo NUMBER con lo siguiente:

Ambos lenguajes SQL y SQL*Plus, pueden hacer referencia a variables bind, y SQL*Plus puede desplegar su valor.

Variables Bind (Continuacin)

Desplegando Variables Bind

En el ambiente de SQL*Plus, para desplegar el valor actual de las variables bind, debes usar el comando PRINT. El siguiente ejemplo ilustra el comando PRINT:

Asignando Valores a las Variables

Para referenciar variables tipo host, debes agregar el smbolo (:) antes del nombre de la variable, para distinguirlas de aquellas de tipo PL/SQL.

Ejemplos:

Practice 16

Declaracin de variables.

1.Evalua cada una de las siguientes declaraciones. Determina cual de ellas no es legal y explica por qu.

a.DECLARE

v_id

NUMBER(4);

b.DECLARE

v_x, v_y, v_zVARCHAR2(10);

c.DECLARE

v_birthdate

DATE NOT NULL;

d.DECLARE

v_in_stock

BOOLEAN := 1;

e.DECLARE

TYPE name_table_type IS TABLE OF VARCHAR2(20)

INDEX BY BINARY_INTEGER;

dept_name_tablename_table_type;

2.En cada uno de las siguientes instrucciones, determina el tipo de dato de la expresin resultante.

a.v_days_to_go := v_due_date - SYSDATE;

b.v_sender := USER || ': ' || TO_CHAR(v_dept_no);

c.v_sum := $100,000 + $250,000;

d.v_flag := TRUE;

e.v_n1 := v_n2 > (2 * v_n3);

f.v_value := NULL;

3.Crea un bloque annimo que imprima la siguiente frase en pantalla : Mi bloque de cdigo PL/SQL si trabaja. Utiliza una variable bind.

G_MESSAGE

-----------------------

My PL/SQL Block Works

Si tienes tiempo completa el siguiente ejercicio:4.Crea un bloque que declare dos variables, asignael valor de estas variables, a variables host deSQL*Plus e imprime el resultado de las variables anteriores en pantalla. Ejecuta tu bloque de cdigo PL/SQL. Guarda el cdigo que has escrito en un archivo llamado p16q4.sql.

V_CHARCaracter (de longitud variable)

V_NUMNumber

Asigna los siguientes valores a las variables:

Variable Value

-------- -------------------------------------

V_CHAR La cadena '42 es la respuesta'

V_NUM Los primeros dos caracteres de la variable V_CHAR

G_CHAR

---------------------

42 is the answer

G_NUM

---------

42

EMBED Word.Document.8 \s

EMBED Word.Document.8 \s

v_sal CONSTANT REAL := 50000.00;

DECLARE

v_hiredatedate

g_deptnonumber(2) NOT NULL := 10;

BEGIN

...

SQL> SELECT sal * 0.10

2 INTObonus

3 FROMemp

4 WHEREempno = 7369;

v_hiredate := to_date('15-SEP-99', 'DD-MON-YY');

g_mgrNUMBER(4) DEFAULT 7839;

EMBED Word.Document.8 \s

...

v_enameemp.ename%TYPE;

...

...

v_balanceNUMBER(7,2);

v_min_balance v_balance%TYPE := 10;

...

v_comm_sal BOOLEAN := (v_sal1 < v_sal2);

v_sal1 < v_sal2

v_sal1 := 50000;

v_sal2 := 60000;

SQL> VARIABLE n NUMBER

...

SQL> PRINT n

VARIABLE return_code NUMBER

:host_var1 := v_sal;

:global_var1 := 'YES';

_________________________________________________________________________

ORACLE SQL y PL/SQL40

_1119955428.docSeccin

Descripcin

Inclusion

Declarativa

Contiene todas las variables, constantes, cursores, excepciones definidas por el usuario que se referencian en las secciones ejecutables y declarativas.

Opcional

Executable

Contiene las sentencias SQL para manipular datos de la base de datos, as como sentencias PL/SQL para manipular datos en el bloque

Obligatoria

Manejo de excepciones

Especifica las acciones a ejecutar cuando los errores y las condiciones anormales se presentan en la seccin ejecutable

Opcional

_1119970158.ppt16-*

Referenciando Variables No-PL/SQL

Almacene el sueldo anual en una variable host de SQL*Plus.

Reference variables no-PL/SQL como variables host.Prefije las referencias con : .

:g_monthly_sal := v_sal / 12;

Assigning Values to VariablesTo reference host variables, you must prefix the references with a colon (:) to distinguish them from declared PL/SQL variables.Examples


:host_var1 := v_sal;:global_var1 := 'YES';

_1206181614.docConstructor de programa

Descripcin

Disponible en

Bloque annimo

Bloque de PL/SQL sin nombre que es integrado dentro de una aplicacin o es utilizado interactivamente

Todos los ambientes PL/SQL

Prodedimiento almacenado o funcion

Bloque de PL/SQL nombrado, almacenado dentro del Servidor de Oracle que puede aceptar parmetros y puede ser invocado repetidamente por su nombre

Servidor de Oracle

Procedimiento o funcin de aplicacin

Bloque de PL/SQL nombrado, almacenado dentro de una biblioteca de Oracle Developer dentro de una aplicacin o estar compartida. Puede aceptar parmetros y puede ser invocado repetidamente por su nombre

Componentes de Oracle Developer por ejemplo, Forms

Paquete

Mdulo nombrado de PL/SQL que agrupa procedimientos, funciones e identificadores relacionados entre s.

Servidor de Oracle y Oracle Developer

Trigger de ta base de datos

Bloque de PL/SQL que est asociado a una tabla de la base de datos y es disparado automticamente cuando es ejecutada una sentencia DML

Oracle Server

Trigger de una Aplicacin

Bloque de PL/SQL que est asociado a un evento de la aplicacin y es disparado automticamente

Oracle Developer/2000

_1119965550.docTipo de Dato

Descripcin

VARCHAR2 (longitud mxima)

Tipo base para datos de carcter de longitud variable de hasta 32767 bytes. No hay tamao por default para las variables y constantes VARCHAR2.

NUMBER [(precisin, escala)]

Tipo base para nmeros de puntos fijos y flotantes.

DATE

Tipo base para fecha y hora. Los valores de FECHA incluyen el tiempo del da en segundos desde la medianoche. El rango vlido para fechas oscila entre 4712 AC y 9999 AD.

CHAR [(longitud_mxima)]

Tipo base para datos de carcter de longitud fija hasta 32767 bytes. Si no especifica longitud_mxima, la longitud es definida a 1.

LONG

Tipo base para datos de carcter de longitud variable hasta 32760 bytes. La anchura mxima de una columna LONG de la base de datos es 2147483647 bytes.

LONG RAW

Tipo base para datos binarios strings de byes hasta de 32760 bytes. Los Datos LONG RAW no son interpretados por PL/SQL.

BOOLEAN

Tipo base que almacena uno de los tres valores posibles usados para clculos lgicos: TRUE, FALSE, o NULL.

BINARY_INTEGER

Tipo base para nmeros enteros entre -2147483647 y 2147483647.

PLS_INTEGER

Tipo base para enteros con signo entre -2147483647 and 2147483647. Los valores PLS_INTEGER requieren menos espacio de almacenamiento y se procesan mas rapido que los valores de tipo NUMBER y BINARY_INTEGER.

_1119864625.ppt16

Declaracin de variables

Schedule:TimingTopic45 minutesLecture30 minutesPractice75 minutesTotal