[firebase-br] [irebase-br] - Apagando todo conteudo de todas as tabelas

Gustavo Moda gustavo.moda em gmail.com
Qua Jun 25 14:39:00 -03 2008


Olá
No ib nao sei, mas você pode fazer um execute block coletando as tabelas na
table RDB$, montando uma string e executar ela pelo execute statment.
Veja exemplo.


execute block
returns (
query varchar(2098)
)
as
declare variable tabela varchar(100);
begin
  for select
     rdb$relation_name
  from rdb$relations t
  where t.rdb$view_source is null
   and rdb$system_flag = 0
  into :tabela
  do begin
     query = 'delete from ' || tabela || '; ';
     -- execute statement :query; -- aqui apaga
     suspend;

  end
end



Caso não seja a versao 2+ você terá que criar uma procedure.



Mais detalhes sobre a lista de discussão lista