Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2020-11-19 22:01:05
PL / SQL - Presentacion
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 1/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 2/211
11/3/2021 PL / SQL - Guía rápida
Caracteristicas de PL / SQL
PL / SQL tiene las siguientes caracteristicas:
Ventajas de PL / SQL
PL / SQL tiene las siguientes ventajas:
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 5/211
11/3/2021 PL / SQL - Guía rápida
win64_11gR2_database_1of2.zip
win64_11gR2_database_2of2 .zip
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 7/211
11/3/2021 PL / SQL - Guía rápida
Paso 1
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 8/211
11/3/2021 PL / SQL - Guía rápida
Paso 2
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 9/211
11/3/2021 PL / SQL - Guía rápida
Paso 3
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 10/211
11/3/2021 PL / SQL - Guía rápida
Paso 4
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 11/211
11/3/2021 PL / SQL - Guía rápida
Paso 5
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 12/211
11/3/2021 PL / SQL - Guía rápida
Paso 6
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 13/211
11/3/2021 PL / SQL - Guía rápida
Paso 7
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 14/211
11/3/2021 PL / SQL - Guía rápida
Paso 8
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 15/211
11/3/2021 PL / SQL - Guía rápida
Paso 9
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 16/211
11/3/2021 PL / SQL - Guía rápida
Paso 10
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 17/211
11/3/2021 PL / SQL - Guía rápida
Paso 11
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 18/211
11/3/2021 PL / SQL - Guía rápida
Último paso
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 19/211
11/3/2021 PL / SQL - Guía rápida
Editor de texto
En ejecucion Los programas grandes desde el simbo
lo del sistema pueden perder inadvertidamente part
e de su trabajo. Siempre se recomienda usar archivo
s por lotes. Para usar los archivos por lotes:
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 20/211
11/3/2021 PL / SQL - Guía rápida
S.
N Sections et deion
Declaraciones
Comandos ejecutables
Gestion excepciones
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 22/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 23/211
11/3/2021 PL / SQL - Guía rápida
Delimitadores PL / SQL
Un delimitador es un simbolo con un signi cadoesp
ecial. Aqui esta la lista de delimitadores en PL / SQL
-
Delimita
Deion
dor
% Bandera de atributo
. Selector de componentes
, Separador de elementos
= Operador relacional
; Terminador de declaracion
:= Operador de asignacion
|| Operador de concatenacion
** Operador de exponenciacion
.. Operador de rango
<,> , <=,
Operadores relacionales
>=
, '=, ~ =,
Diferentes versiones de NOT EQUAL
^=
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 25/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 26/211
11/3/2021 PL / SQL - Guía rápida
1 Bloque PL / SQL
2 Funcion
3 Paquete
5 Procedimiento
6 Activador
7 Escriba
8 Escriba cuerpo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 27/211
11/3/2021 PL / SQL - Guía rápida
S.
N Categoria y Deion
Escalar
3
Compuesto
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 28/211
11/3/2021 PL / SQL - Guía rápida
Referencia
4
Punteros a otros elementos de data.
S.
Tipo de fecha & Deion
No
Numerico
Caracter
s o caracteres individuales.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 29/211
11/3/2021 PL / SQL - Guía rápida
3 Booleano
Fecha y hora
4
Fechas y horarios.
PLS_INTEGER
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 30/211
11/3/2021 PL / SQL - Guía rápida
BINARY_INTEGER
BINARY_FLOAT
BINARY_DOUBLE
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 31/211
11/3/2021 PL / SQL - Guía rápida
DOBLE PRECISIÓN
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 32/211
11/3/2021 PL / SQL - Guía rápida
10
FLOAT
11
INT
12
INTEGER
13
SMALLINT
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 33/211
11/3/2021 PL / SQL - Guía rápida
14
REAL
1
CHAR
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 34/211
11/3/2021 PL / SQL - Guía rápida
VARCHAR2
RAW
NCHAR
5
NVARCHAR2
LARGO
LONG RAW
ROWID
UROWID
Identi cador de la
universal ( identi c
ador de la sico, l
ogico o externo)
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 36/211
11/3/2021 PL / SQL - Guía rápida
1 declaraciones SQL
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 37/211
11/3/2021 PL / SQL - Guía rápida
No
mbr
Valores de fecha y hora va Valores de rango
e de
lidos validos
cam
po
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 38/211
11/3/2021 PL / SQL - Guía rápida
cero
ME
01 a 12 0 a 11
S
regional)
HO
00 a 23 0 a 23
RA
MIN
00 a 59 0 a 59
UTO
0 a 59,9(n), donde
gundo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 39/211
11/3/2021 PL / SQL - Guía rápida
HO
UR
TIM
EZO
NE_ 00 a 59 No aplicable
MIN
UTE
TIM
REG IMEZONE_NAMES
ION
TIM
ABB IMEZONE_NAMES
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 40/211
11/3/2021 PL / SQL - Guía rápida
Tipo de d
Deion Tamano
ata
e de data. es (GB).
e data.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 41/211
11/3/2021 PL / SQL - Guía rápida
a.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 42/211
11/3/2021 PL / SQL - Guía rápida
NULL en PL / SQL
Los valores NULL de PL / SQL representan data falt
antes o desconocidos y no son un numero entero, c
aracter u otro tipo de data especi co. Tenga en cuen
ta que NULL no es lo mismo que una cadena de data
vacia o el valor de caracter nulo '0 ' . Se puede asign
ar un empate pero no se asimilaa nada, incluido el m
ismo.
PL / SQL - Variables
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 43/211
11/3/2021 PL / SQL - Guía rápida
Declaracion de variable en PL /
SQL
Las variables de PL / SQL deben declararse en la sec
cion de declaracion o en un paquete como variable g
lobal. Cuando declara una variable, PL / SQL asigna
memoria para el valor de la variable y la ubicacion d
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 44/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 45/211
11/3/2021 PL / SQL - Guía rápida
Inicializando variables en PL / S
QL
Cada vez que declara una variable, PL / SQL le asign
a un valor predeterminado de NULL. Si desea iniciali
zar una variable con un valor que no sea NULL, pued
e hacerlo mientras declara, utilizando uno de los sig
uientes metodos:
El operador asignacion
Por ejemplo -
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 47/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 48/211
11/3/2021 PL / SQL - Guía rápida
Asignacion de resultados de co
nsultas SQL a variables PL / SQ
L
Puede utilizar la instruccion SELECT INTO de SQL pa
ra asignar valores a variables PL / SQL. Para cada el
emento de la lista SELECT , debe haber una variable
correspondiente compatible con el tipo de la lista IN
TO . El siguiente ejemplo ilustra el diseno. Creemos
una tabla llamada CLIENTES -
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 50/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 51/211
11/3/2021 PL / SQL - Guía rápida
Literales PL / SQL
Un literal es un valor numerico, caracter, cadena o b
ooleano explicito no representado por un identi cad
or. Por ejemplo, TRUE, 786, NULL, 'tutorialspoint ' so
n todos literales de tipo booleano, numero o cadena.
PL / SQL, los literales distinguen entre mayusculas y
minusculas. PL / SQL admite los siguientes tipos de l
iterales:
1 Literales numericos
2 Literales de caracteres
3 Literales de cadena
4 Literales BOOLEAN
Literales numericos
Literales de caracteres
2
'A ' '% ' '9 ' '' 'z ' '( '
Literales de cadena
Literales BOOLEAN
4
VERDADERO, FALSO y NULO.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 53/211
11/3/2021 PL / SQL - Guía rápida
PL / SQL - Operadores
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 54/211
11/3/2021 PL / SQL - Guía rápida
1 Operadores aritmeticos
2 Operadores de relacionels
3 Operadores de comparacion
4 Operadores logicos
5 Operadores de cadena
Operadores aritmeticos
La siguiente tabla muestra todos los operadores arit
meticos admitidos por PL / SQL. Suponga que varia
ble A contiene 10 y variable B contiene 5, luego -
Mostrar ejemplos
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 55/211
11/3/2021 PL / SQL - Guía rápida
00
Operadores relacionales
Los operadores relacionales comparan dos expresio
nes o valores y devuelven un resultado booleano. La
siguiente tabla muestra todos los operadores relaci
onales compatibles con PL / SQL. Suponga que vari
able A contiene 10 y variable B contiene 20, luego -
Mostrar ejemplos
dera.
O Deion Ejem
pe plo
ra
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 56/211
11/3/2021 PL / SQL - Guía rápida
do
(A =
Comprueba si los valores de dos operand
B) no
= os son iguales o no, si es asi, la condicion
es cie
se vuelve verdadera.
rto.
!=
~ (A! = B) es verdadero.
=
erdadera. o.
adera.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 57/211
11/3/2021 PL / SQL - Guía rápida
Operadores de comparacion
Los operadores de comparacion se utilizan para com
parar una expresion con otra. El resultado es siempr
e TRUE, FALSE o NULL .
Mostrar ejemplos
r
Deion Ejemplo
a
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 58/211
11/3/2021 PL / SQL - Guía rápida
o. ve un booleano fals
o.
B Si x = 10 entonces, x
N also.
n NULL.
Operadores logicos
La siguiente tabla muestra los operadores logicos a
dmitidos por PL / SQL. Todos estos operadores trab
ajar en operandos booleanos y producirResultados
booleanos. Supongamos que variable A es verdader
a y variable B es falsa, entonces -
Mostrar ejemplos
p
Eje
er
Deion mplo
a
s
d
or
rect
o.
(A o
o.
no
Llamado al operador logico NOT. Usado pa
(A y
n ra revertirel estado logico de su operando.
B) es
o Si una condicion es verdadera, entonces el
ciert
operador logico NOT la convertira en falsa.
o.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 61/211
11/3/2021 PL / SQL - Guía rápida
Mostrar ejemplos
Operador Operacion
** exponenciacion
+, - identidad , negacion
*, / multiplicacion,
comparacion
NO negacion logica
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 62/211
11/3/2021 PL / SQL - Guía rápida
Y conjuncion
O inclusion
PL / SQL - Condiciones
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 63/211
11/3/2021 PL / SQL - Guía rápida
S.
N Declaracion y deion
1 IF - THEN instruccion
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 64/211
11/3/2021 PL / SQL - Guía rápida
Declaracion de caso
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 65/211
11/3/2021 PL / SQL - Guía rápida
PL / SQL - Bucles
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 66/211
11/3/2021 PL / SQL - Guía rápida
S.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 67/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 68/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 69/211
11/3/2021 PL / SQL - Guía rápida
declaracion CONTINUE
Instruccion GOTO
PL / SQL - Cadenas
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 70/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 71/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 72/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 73/211
11/3/2021 PL / SQL - Guía rápida
S.
N Funcion y proposito
ASCII (x);
1
Devuelve el valor ASCII del caracter x.
CHR (X);
2
Devuelve el caracter con el valor ASCII de x.
agregada.
INITCAP (X);
a que aparece.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 74/211
11/3/2021 PL / SQL - Guía rápida
6 INSTRB (X);
LONGITUD (X);
7
Devuelve el numero de caracteres entre x.
LONGITUD B (x);
INFERIOR (X);
esta cadena.
11
LTRIM (x [, trim_string]);
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 75/211
11/3/2021 PL / SQL - Guía rápida
NLS_INITCAP (x);
1
Igual que la funcion INITCAP excepto que puede
3 usar un metodo de clasi cacion diferente segun l
o especi cado por NLSSORT.
NLS_LOWER (X);
1
Igual que la funcion LOWER excepto que puede
4 usar un metodo de clasi cacion diferente segun l
o especi cado por NLSSORT.
NLS_UPPER (X);
1
Igual que la funcion SUPERIOR, excepto que pue
5 de usar un metodo de clasi cacion diferente seg
un lo especi cado por NLSSORT.
1
NLSSORT (X);
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 76/211
11/3/2021 PL / SQL - Guía rápida
0 Rellenar x a la derecha.
2
RTRIM (x [, trim_string]);
1
Cortar x desde la derecha.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 77/211
11/3/2021 PL / SQL - Guía rápida
SOUNDEX (X);
2
Devuelve una cadena que contiene la representa
2
cion fonetica de x .
SUBSTRB (X);
2
Igual que SUBSTR excepto que los parametros s
4 e expresan en bytes en lugar de caracteres para l
os sistemas de caracteres de un solo byte.
2
SUPERIOR (x);
6
Convierte letras en x a mayusculas y devuelve es
ta cadena.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 78/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo 1
Ejemplo 2
PL / SQL - Tablas
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 80/211
11/3/2021 PL / SQL - Guía rápida
Donde,
1 varray_type_name es un nombre
de atributo valido,
Por ejemplo,
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 82/211
11/3/2021 PL / SQL - Guía rápida
Por ejemplo -
Ejemplo 1
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 83/211
11/3/2021 PL / SQL - Guía rápida
Nota -
4
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 84/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo 2
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 85/211
11/3/2021 PL / SQL - Guía rápida
PL / SQL - Procedimientos
1 Nivel de esquema
2 En un paquete
3 En un bloque PL / SQL
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 87/211
11/3/2021 PL / SQL - Guía rápida
S.
N Piezas y deion
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 88/211
11/3/2021 PL / SQL - Guía rápida
1 Parte declarativa
Parte ejecutable
Manejo de excepciones
Creando un procedimiento
Se crea un procedimiento con CREATE OR Sentencia
REPLACE PROCEDURE La sintaxis simpli cada para
la sentencia CREATE OR REPLACE PROCEDURE es l
a siguiente:
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 89/211
11/3/2021 PL / SQL - Guía rápida
Donde,
4
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 90/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo
Procedimiento creado.
Ejecucion de un procedimiento i
ndependiente
Se puede llamar a un procedimiento independiente
de dos formas:
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 91/211
11/3/2021 PL / SQL - Guía rápida
EXECUTE greetings;
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 92/211
11/3/2021 PL / SQL - Guía rápida
Eliminacion de un procedimient
o independiente
Un procedimiento independiente se elimina con la in
struccion DROP PROCEDURE . La sintaxis para elimi
nar un procedimiento es -
S.
1
IN
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 93/211
11/3/2021 PL / SQL - Guía rápida
OUT
3
IN OUT
1 Notacion posicional
3 Notacion mixta
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 96/211
11/3/2021 PL / SQL - Guía rápida
Notacion posicional
Notation named
En notacion con nombre, el parametro real se asocia
con el parametro formal usando el simbolo de ech
a (=>) . La llamada al procedimiento sera la siguient
e:
Notacion mixta
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 97/211
11/3/2021 PL / SQL - Guía rápida
PL / SQL - Funciones
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 98/211
11/3/2021 PL / SQL - Guía rápida
Donde,
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 99/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo
Funcion creada.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 101/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 102/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 103/211
11/3/2021 PL / SQL - Guía rápida
PL / SQL - Cursores
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 104/211
11/3/2021 PL / SQL - Guía rápida
1 Cursores implicitos
2 Cursores explicitos
Cursores implicitos
Oracle crea automaticamente cursores implicitos ca
da vez que se ejecuta una instruccion SQL, cuando n
o hay un cursor explicito para la instruccion. Los pro
gramadores no pueden controlar los cursores implici
tos y la informacion que contienen.
S.
% ENCONTRADO
% NOTFOUND
3
% ISOPEN
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 106/211
11/3/2021 PL / SQL - Guía rápida
% ROWCOUNT
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 108/211
11/3/2021 PL / SQL - Guía rápida
Cursores explicitos
Los cursores explicitos son cursores de nidos por el
programador para obtener mas control sobre el area
de contexto . Un cursor explicitodebe de nirse en la
seccion de declaracion del bloque PL / SQL. Se crea
en una instruccion SELECT que devuelve mas de un
a la.
Abrir el cursor
Abrir el cursor asigna memoria para el cursor y lo pr
epara para el.recuperar las las devueltas por la sen
tencia SQL. Por ejemplo, abriremos el cursor de nid
o anteriormente de la siguiente manera:
OPE N c_customers;
Cerrar cursor
Cerrar cursor signi ca liberar memoria asignada. Po
r ejemplo, cerraremos el cursor abierto arriba de la si
guiente manera:
CLOSE c_customers;
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 111/211
11/3/2021 PL / SQL - Guía rápida
PL / SQL - Registros
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 112/211
11/3/2021 PL / SQL - Guía rápida
1 Basado en tablas
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 113/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 114/211
11/3/2021 PL / SQL - Guía rápida
1 Titulo
2 Autor
3 Asunto
4 ID de libro
De nicion de registro
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 115/211
11/3/2021 PL / SQL - Guía rápida
Acceso al campo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 117/211
11/3/2021 PL / SQL - Guía rápida
PL / SQL - Excepciones
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 120/211
11/3/2021 PL / SQL - Guía rápida
Lanzamiento de excepciones
El servidor de la base de data lanza las excepciones
automaticamente cada vez que hay un error. base d
e data interna, pero el programador puede lanzar ex
cepciones explicitamente usando el comando RAISE
. Aqui esta la sintaxis simple para lanzar una excepci
on:
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 121/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 122/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 123/211
11/3/2021 PL / SQL - Guía rápida
Er S
ro Q
Exc r L
epc de C Deion
ion Or O
ac D
le E
CE 6 6 tomaticamente un valor.
SS_ 5 5
INT 3 3
O_ 0 0
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 124/211
11/3/2021 PL / SQL - Guía rápida
NU
LL
CA
0 -
SE_ Se activa cuando no se selecciona ningun
6 6
NO a de las opciones en la clausula WHEN de
5 5
T_F una instruccion CASE, y hay no tiene clau
9 9
OU sula ELSE.
2 2
ND
CO
Se activa cuando un programa intenta apl
LLE -
0 icar metodos de recopilacion distintos de
CTI 6
6 EXI STS a una tabla anidada o varray no i
ON 5
5 nicializada, o al El programa intenta asign
_IS_ 3
31 ar valores a los elementos de una tabla a
NU 1
nidada o varray no inicializada.
LL
ON 01
_IN
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 125/211
11/3/2021 PL / SQL - Guía rápida
DE
INV
-
ALI
01 1 Se activa cuando se intenta realizar una o
D_C
0 0 peracion no autorizada del cursor, como c
UR
01 0 errar un cursor sin abrir.
SO
1
R
INV
-
ALI 01
1 Se activa cuando falla la conversion de un
D_ 7
7 a cadena en un numero porque la cadena
NU 2
2 no representa un numero valido.
MB 2
2
ER
LO -
D 7
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 126/211
11/3/2021 PL / SQL - Guía rápida
TA_ 0 0
FO 3 0
UN
NO
-
T_L
01 1 Esto se genera cuando se realiza una lla
OG
01 0 mada a la base de data sin estar conectad
GE
2 1 o a la base de data.
D_
2
ON
PR
OG -
0
RA 6
6 Se activa cuando PL / SQL tiene un proble
M_ 5
5 ma interno.
ER 0
01
RO 1
YP 5 5 patible.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 127/211
11/3/2021 PL / SQL - Guía rápida
E_ 0 0
MI 4 4
SM
AT
CH
-
SE 3
3
LF_ 0 Se activa cuando se activa un metodo mie
0
IS_ 6 mbro llamado, pero la instancia del tipo d
6
NU 2 e objeto no se ha inicializado.
2
LL 5
5
ST
0 -
OR
6 6
AG Se activa cuando PL / SQL se queda sin m
5 5
E_E emoria o la memoria esta danada.
0 0
RR
0 0
OR
MA 2 4
NY_ 2
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 128/211
11/3/2021 PL / SQL - Guía rápida
RO 2
WS 2
VA 0 -
RR 0 0 striccion de tamano.
OR 2 2
ZE
01 1
RO
4 4
_DI Se activa cuando unSe intenta
7 7
VID
6 6
E
PL / SQL - Triggers
1
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 129/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 130/211
11/3/2021 PL / SQL - Guía rápida
4 Auditoria
Creacion de disparadores
La sintaxis para crear un disparador es -
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 131/211
11/3/2021 PL / SQL - Guía rápida
Donde,
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 132/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 133/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 134/211
11/3/2021 PL / SQL - Guía rápida
Trigger creado.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 135/211
11/3/2021 PL / SQL - Guía rápida
Activando un disparador
Hagamos algunas operaciones DML en la tabla CUS
TOMERS. Aqui hay una instruccion INSERT, que cre
ara un nuevo registro en la tabla:
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 136/211
11/3/2021 PL / SQL - Guía rápida
0,00);
PL / SQL - Paquetes
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 137/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 138/211
11/3/2021 PL / SQL - Guía rápida
Paquete creado.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 139/211
11/3/2021 PL / SQL - Guía rápida
nombre_paquete.element_name;
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 140/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 141/211
11/3/2021 PL / SQL - Guía rápida
Paquete creado.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 142/211
11/3/2021 PL / SQL - Guía rápida
Usando el paquete
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 143/211
11/3/2021 PL / SQL - Guía rápida
PL / SQL - Colecciones
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 144/211
11/3/2021 PL / SQL - Guía rápida
2 Matriz anidada
mitado
Ti
Num Puede ser
po
Tipo de ero d una aatri
de Denso o Lugar de cre
coleccio e ele buto del t
in escaso acion
n men ipo de obj
dic
tos eto
e
Matriz a
Cade Cu
sociativ Solo en e
na o alq
a (o tabl l bloque No
ente uie
a index PL / SQL
ro ra
ada)
s er puede vo de esquema
lverse es
caso
Matriz d Ya sea en el
ay) uema
Tabla indexada
Una tabla indexada (etambien llamado matriz asoci
ativa ) es un conjunto de pares clave-valor . Cada cla
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 146/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 147/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo
Tablas anidadas
Una tabla anidada es como una matriz unidimensio
nal con un numero arbitrario de elementos. Sin emb
argo, una tabla anidada di ere de una matriz en sig
uientes aspectos -
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 150/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 152/211
11/3/2021 PL / SQL - Guía rápida
Metodos de recoleccion
PL / SQL proporciona metodos de recoleccion integr
adosque facilitan el uso de colecciones. La siguiente
tabla enumera los metodos y su proposito -
S.
EXISTS (n)
COUNT
3
LÍMITE
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 153/211
11/3/2021 PL / SQL - Guía rápida
PRIMERO
ÚLTIMO
ANTERIOR (n)
ce n en una coleccion.
N EXT (n)
n.
EXTEND
8
Agrega un elemento nulo a una coleccion.
9
EXTEND (n)
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 154/211
11/3/2021 PL / SQL - Guía rápida
1 EXTEND (n, i)
1 TRIM
1 TRIM (n)
BORRAR
1
Elimina todos los elementos de una coleccion, est
3
ableciendo COUNT en 0.
ELIMINAR (n)
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 155/211
11/3/2021 PL / SQL - Guía rápida
1 BORRAR (m, n)
Excepciones de coleccion
La siguiente tabla proporciona las excepciones de c
oleccion y cuando se generan -
PL / SQL - Transacciones
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 157/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 158/211
11/3/2021 PL / SQL - Guía rápida
COMMIT;
Por ejemplo,
Rollback Transactions
Los cambios realizados en la base de data sin COM
MIT se pueden revertir usando el comando ROLLBA
CK.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 160/211
11/3/2021 PL / SQL - Guía rápida
ROLLBACK;
Savepoint s
SAVEPOINT ;
Por ejemplo
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 161/211
11/3/2021 PL / SQL - Guía rápida
1 DATE
2 TIMESTAMP
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 163/211
11/3/2021 PL / SQL - Guía rápida
o 0) rente cero
MES 01 a 12 0 a 11
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 164/211
11/3/2021 PL / SQL - Guía rápida
HORA 00 a 23 0 a 23
MINUTO 00 a 59 0 a 59
00 a 59.9 (n), do
nde 9 (n) es la pr 0 a 59,9 (n), do
ecision de las fra nde 9 (n) es la
cciones de tiemp
SEGUNDO precision del in
o en segundos
tervalo fraccio
El 9 (n) no es apli n de segundo
cable para DATE.
TIMEZONE_MINU No aplicable
00 a 59
TE
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 165/211
11/3/2021 PL / SQL - Guía rápida
No aplicable par
a DATE o TIMEST
AMP.
No aplicable par
TIMEZONE_REGI
a DATE o TIMES No aplicable
ON
TAMP.
No aplicable par
TAMP.
FECHA
TIMESTAMP
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 166/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 167/211
11/3/2021 PL / SQL - Guía rápida
No
LAST_DAY (X);
2
Devuelve el ultimo dia del mes.
ues de x .
NEW_TIME;
REDONDO (x [, unidad]);
6
Ronda x .
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 168/211
11/3/2021 PL / SQL - Guía rápida
7 SYSDATE
TRUNC (x [, unidad]);
8
Truncar x .
S.
2
EXTRACTO ({YEAR | MONTH | DAY | HOUR | MIN
UTE | SECOND} | {TIMEZONE_HOUR | TIMEZONE_
MINUTE} | {TIMEZONE_REGION |} TIMEZONE_AB
BR) FROM x)
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 169/211
11/3/2021 PL / SQL - Guía rápida
LOCALTIMESTAMP
SYSTIMESTAMP
SYS_EXTRACT_UTC (X);
7
TO_TIMESTAMP (x, [formato]);
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 170/211
11/3/2021 PL / SQL - Guía rápida
ZONE.
Ejemplos
Ejemplo 1
Salir -
31/08/2012 17:25:34
Ejemplo 2
Salida -
31-08-2012 05:26:14
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 171/211
11/3/2021 PL / SQL - Guía rápida
Ejemplo 3
Salida -
31/01/2013 17:26 : 31
Ejemplo 4
Salida -
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 172/211
11/3/2021 PL / SQL - Guía rápida
Funciones de rango
S.N
Nombre y deion de la funcion
o
TO_DSINTERVAL (x);
4
TO_YMINTERVAL(x);
Subrutinas DBMS_OUTPUT
El paquete DBMS_OUTPUT contiene las siguientes s
ubrutinas -
S. Subrutina y objetivo
N
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 174/211
11/3/2021 PL / SQL - Guía rápida
DBMS_OUTPUT.DISABLE;
1
Desactiva la salida de mensajes.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 175/211
11/3/2021 PL / SQL - Guía rápida
7 AR2);
Ejemplo
DECLARAR lineas dbms_output.chararr; num_lines n
umero; BEGIN: habilita el bufer con el tamano prede
terminado 20000 dbms_output.enable; dbms_ outp
ut.put_line ( '¡Hola jugador! '); dbms_output.put_line (
'¡Espero que hayas disfrutado de los tutoriales! '); db
ms_output.put_line ( '¡Diviertete explorando pl / sql!
'); num_lines: = 3; dbms_output.get_lines (lineas, num
_lines); FOR i IN 1..num_lines LOOP dbms_output.put_
line (lineas (i)); END LOOP; FIN; /
Tipo creado.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 177/211
11/3/2021 PL / SQL - Guía rápida
Tipo creado.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 178/211
11/3/2021 PL / SQL - Guía rápida
Metodos de miembros
Los metodos de miembros se utilizan para manipula
r los atributos del objeto. Tu proveesla declaracion d
e un metodo miembro al declarar el tipo de objeto. E
l cuerpo del objeto de ne el codigo de los metodos
miembros. El cuerpo del objeto se crea utilizando la i
nstruccion CREATE TYPE BODY.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 179/211
11/3/2021 PL / SQL - Guía rápida
Metodo de mapa
Metodo de orden
Tipo creado.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 181/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 182/211
11/3/2021 PL / SQL - Guía rápida
Tipo creado.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 183/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 184/211
11/3/2021 PL / SQL - Guía rápida
Tipo creado.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 185/211
11/3/2021 PL / SQL - Guía rápida
Tipo creado.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 186/211
11/3/2021 PL / SQL - Guía rápida
Por ejemplo,
Tipo creado.
PL / SQL - Bucles
2020-11-19 22:01:31 |Tutorial de pl / ...
Preguntas y respuestas de PL /
SQLPreguntas y respuestas PL / SQL se
ha diseñado con la intención especial de
ayudar a los estudiantes y profesionales a
prepararse para los exámenes de
certi cación y las entrevistas de trabajo.
Esta sección proporciona una colección
útil de ejemplos de pregunt...
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 189/211
11/3/2021 PL / SQL - Guía rápida
2020-11-19 22:02:08
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 190/211
11/3/2021 PL / SQL - Guía rápida
win64_11gR2_database_1of2.zip
win64_11gR2_database_2of2.zip
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 191/211
11/3/2021 PL / SQL - Guía rápida
Paso 1
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 192/211
11/3/2021 PL / SQL - Guía rápida
Paso 2
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 193/211
11/3/2021 PL / SQL - Guía rápida
Paso 3
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 194/211
11/3/2021 PL / SQL - Guía rápida
Paso 4
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 195/211
11/3/2021 PL / SQL - Guía rápida
Paso 5
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 196/211
11/3/2021 PL / SQL - Guía rápida
Paso 6
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 197/211
11/3/2021 PL / SQL - Guía rápida
Paso 7
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 198/211
11/3/2021 PL / SQL - Guía rápida
Paso 8
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 199/211
11/3/2021 PL / SQL - Guía rápida
Paso 9
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 200/211
11/3/2021 PL / SQL - Guía rápida
Paso 10
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 201/211
11/3/2021 PL / SQL - Guía rápida
Paso 11
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 202/211
11/3/2021 PL / SQL - Guía rápida
Último paso
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 203/211
11/3/2021 PL / SQL - Guía rápida
Editor de texto
La ejecucion de programas grandes desde el simbol
o del sistema puede perder inadvertidamente parte
de su trabajo. Siempre se recomienda utilizar archiv
os por lotes. Para utilizar archivos por lotes:
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 204/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 205/211
11/3/2021 PL / SQL - Guía rápida
2020-11-19 22:01:31
PL / SQL - Bucles
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 207/211
11/3/2021 PL / SQL - Guía rápida
S.
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 208/211
11/3/2021 PL / SQL - Guía rápida
S.
declaracion CONTINUE
3 instruccion GOTO
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 210/211
11/3/2021 PL / SQL - Guía rápida
https://www.hebergementwebs.com/tutorial-de-pl-sql/pl-sql-guia-rapida 211/211