Limpar Table of varchar
12/10/2008
Essa semana surgiu uma dúvida no forum sobre variáveis TABLE of Varchar: Como zerar um array de varchar ? Aí vai a solução…
Basta setar uma variável vazia em cima da original. Abaixo um exemplo:
-- delete Pl/SQL table records
declare
type myTextTableType is table of varchar2(200) index by binary_integer;
l_tabela_texto myTextTableType;
l_tabela_vazia myTextTableType;
begin
l_tabela_texto(10) := 'Um valor';
l_tabela_texto(20) := 'outro valor';
l_tabela_texto(30) := 'mais um valor';
l_tabela_texto := l_tabela_vazia;
dbms_output.put ('Uma vez que setamos nossa tabela VAZIA p/ uma TABELA POPULADA, ela se torna vazia.');
dbms_output.put_line('Quantidade: ' || l_tabela_texto.count || ' varchars');
end;
/
Abaixo, colocaremos uma amostra dos resultados:
SQL> set serveroutput on
SQL>
SQL> -- delete Pl/SQL table records
SQL> declare
2 type myTextTableType is table of varchar2(200) index by binary_integer;
3
4 l_tabela_texto myTextTableType;
5 l_tabela_vazia myTextTableType;
6 begin
7 l_tabela_texto(10) := 'Um valor';
8 l_tabela_texto(20) := 'outro valor';
9 l_tabela_texto(30) := 'mais um valor';
10
11 l_tabela_texto := l_tabela_vazia;
12 dbms_output.put ('Uma vez que setamos nossa tabela VAZIA p/ uma TABELA POPULADA, ela se torn
a vazia.');
13 dbms_output.put_line('Quantidade: ' || l_tabela_texto.count || ' varchars');
14
15 end;
16 /
Uma vez que setamos nossa tabela VAZIA p/ uma TABELA POPULADA, ela se torna
vazia.Quantidade: 0 varchars
PL/SQL procedure successfully completed.
SQL>
Comentários aqui
Tags: PL/SQL, table of record