Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
12 EXTERNAL FUNCTIONS................................................................................................................ 29
3
13 DIVERSOS (DICAS).......................................................................................................................... 29
13.1 HINTS DE PAGINAÇÃO ........................................................................................................................ 29
13.2 PLS_INTEGER ................................................................................................................................ 29
13.3 VARRAY (ORACLE8) ....................................................................................................................... 29
13.4 RECURSIVIDADE ................................................................................................................................ 29
13.5 DICIONÁRIO ORACLE ...................................................................................................................... 29
4
1 MUTATING TABLES
Uma MUTATING table ou tabela mutante é uma tabela que está sendo
modificada atualmente por uma instrução UPDATE, DELETE ou INSERT. Uma
tabela não é considerada mutante para gatilhos STATEMENT, somente para
triggers de ROW (FOR EACH ROW).
2 CURSOR VARIABLES
DECLARE
-- Criando o tipo
TYPE DeptCurTyp IS REF CURSOR RETURN dept%ROWTYPE;
-- Criando a variável
dept_cv DeptCurTyp;
BEGIN
...
END;
9
A declaração OPEN - FOR associa o cursor com uma consulta que retorne
múltiplas linhas, executa a consulta e identifica o conjunto de respostas. A
sintaxe para a declaração é:
CLOSE {nome_variável_cursor };
CLOSE lr_cliente;
--
END PRC_EXIBE_CLIENTES;
END PCK_CLIENTES;
3 LOCAL MODULES
END LOOP;
END;
4 OVERLOADING
PROCEDURE PUT_LINE
Argument Name Type In/Out Default?
----------------------- -------------------- ------ --------
A VARCHAR2 IN
PROCEDURE PUT_LINE
Argument Name Type In/Out Default?
----------------------- -------------------- ------ --------
A NUMBER IN
PROCEDURE PUT_LINE
Argument Name Type In/Out Default?
----------------------- -------------------- ------ --------
A DATE IN
14
Sintaxe
Exemplo
END;
DECLARE
CURSOR c_emp IS
SELECT *
FROM EMPREGADOS
WHERE SALARIO > 50000
novo_salario number;
BEGIN
FOR emp_row in c_emp LOOP
DECLARE
CURSOR c_emp IS
SELECT *
FROM EMPREGADOS
WHERE SALARIO > 50000
FOR UPDATE
novo_salario number;
BEGIN
FOR emp_row in c_emp LOOP
DECLARE
CURSOR c_emp IS
SELECT e.rowid, e.*
FROM EMPREGADOS e
WHERE SALARIO > 50000;
novo_salario number;
BEGIN
FOR emp_row in c_emp LOOP
BEGIN
SELECTt nome
INTO :nome_cliente
FROM clientes
WHERE contato = 'JOAO';
AND data_aniversario = '10-may-2000';
END;
DECLARE
CURSOR c_nome is
SELECT nome
INTO :nome_cliente
FROM clientes
WHERE contato = 'JOAO'
AND data_aniversario = '10-may-2000';
BEGIN
OPEN C_NOME;
FETCH C_NOME;
CLOSE C_NOME;
END;
22
Coluna Descrição
NAME Nome do Objeto dependente
TYPE Tipo do Objeto dependente (PROCEDURE,
FUNCTION, PACKAGE, PACKAGE BODY,
TRIGGER ou VIEW)
REFERENCED_OWNER Esquema (OWNER) do objeto referenciado
REFERENCED_NAME Nome do objeto referenciado
REFERENCED_TYPE Tipo do objeto referenciado
REFERENCED_LINK_NAME Database link
SELECT *
FROM IDEPTREE;
28
DEPENDENCIES
-----------------------------------------------------
TABLE SCOTT.EMP
VIEW SCOTT.NEW_EMP
PROCEDURE SCOTT.ADD_EMP
PROCEDURE SCOTT.QUERY_EMP
29
10 ORACLE PACKAGES
10.1 DBMS_JOB
10.2 DBMS_DDL
10.3 DBMS_JOB
10.4 DBMS_OUTPUT
10.5 DBMS_SQL
10.6 UTL_FILE
10.7 DBMS_SHARED_POOL
11 COBOL E ORACLE
12 EXTERNAL FUNCTIONS
13 DIVERSOS (DICAS)
13.2 PLS_INTEGER
13.4 Recursividade