Analisando os possíveis cenários, hoje no ambiente em que trabalho os bancos são desenvolvidos com ferramentas de modelagem no qual podemos fazer todo o processo de geração de scripts ou engenharia reversa! Isso é um cenário perfeito, sei que não é todos os lugares que funcionam assim, então vamos a um outro cenário:
Já existe um DB que está em homologação e precisa apagar todos os dados e o sistema tem 'n' tabelas e não existe um modelo feito, a solução para limpar o DB é realizar um Truncate mas para isso é necessário descobrir quais são as tabelas do banco.
select tabschema , tabname from from syscat.tables where tabschema = 'XXX'
Após você descobrir quais são as tabelas do banco, basta montar um script para gerar a limpeza da tabela.
select ' TRUNCATE TABLE ' || rtrim(tabschema) || '.' || tabname || ' IMMEDIATE ;' from syscat.tables where tabschema = 'XXX'
Com a query acima você consegue o resultado para limpar todas as tabelas do seu banco por um determinado schema.
Executar um Truncate é mais rápido e performático do que o DELETE.
Nenhum comentário:
Postar um comentário