Ambos são usados para definir variáveis no PL/SQL da mesma forma como está definido na base de dados. Se o tipo ou precisão de uma coluna for alterada, o bloco/programa PL/SQL automaticamente pega a nova definição da coluna na base de dados.
O type% e ROWTYPE% ajuda a reduzir custos de manutenção permitindo que os programas se adaptem ao banco de dados com as alterações realizadas nas colunas.
TYPE% é utilizado para declarar uma variável com o mesmo tipo de uma determinada coluna da tabela:
DECLARE
v_EmpName emp.ename%TYPE;
BEGIN
SELECT ename INTO v_EmpName FROM emp WHERE ROWNUM = 1; DBMS_OUTPUT.PUT_LINE('Name = ' v_EmpName);
END;/
ROWTYPE% é usado para declarar uma variavel contendo todos os campos de uma tabela, ou seja, é usado para armazenar uma linha da tabela:
DECLARE v_emp emp%ROWTYPE;
BEGIN
v_emp.empno := 10;
v_emp.ename := 'XXXXXXX';
END;/
T+
Nenhum comentário:
Postar um comentário