Drop vs Truncate

Drop e Truncate são duas instruções SQL (Structured Query Language) usadas nos Sistemas de Gerenciamento de Banco de Dados, nas quais desejamos remover registros de dados de um banco de dados. As instruções Drop e Truncate removem os dados inteiros em uma tabela e a instrução SQL relacionada. A operação de exclusão não é efetiva nesse caso, pois utiliza mais espaços de armazenamento do que Soltar e Truncar.

No caso, se quisermos descartar uma tabela em um banco de dados com todos os seus dados, o SQL nos permitirá realizar isso facilmente usando a instrução Drop. O comando Drop é um comando DDL (Data Definition Language) e pode ser usado para destruir um banco de dados, tabela, índice ou exibição existente. Exclui todas as informações em uma tabela, bem como a estrutura da tabela do banco de dados. Além disso, podemos desejar livrar-nos de todos os dados de uma tabela de maneira simples, mas sem a tabela, e podemos usar a instrução Truncar no SQL nesse cenário. Truncar também é um comando DDL e elimina todas as linhas de uma tabela, mas preserva a mesma definição de tabela para uso futuro.

Soltar comando

Como mencionado anteriormente, o comando Drop remove a definição da tabela e todos os seus dados, restrições de integridade, índices, gatilhos e privilégios de acesso, que foram criados nessa tabela específica. Portanto, ele remove completamente o objeto existente do banco de dados e os relacionamentos com outras tabelas também não serão mais válidos após a execução do comando. Também remove todas as informações sobre a tabela do dicionário de dados. A seguir está a sintaxe típica para usar a instrução Drop em uma tabela.

DROP TABLE

Temos que substituir simplesmente o nome da tabela que queremos remover do banco de dados no exemplo acima do comando Drop.

É importante ressaltar que a instrução Drop não pode ser usada para excluir uma tabela, que já foi referenciada por uma restrição de chave estrangeira. Nesse caso, a restrição de chave estrangeira de referência ou essa tabela específica deve ser eliminada primeiro. Além disso, a instrução Drop não pode ser aplicada nas tabelas do sistema no banco de dados.

Como o comando Drop é uma instrução de confirmação automática, a operação, uma vez acionada, não pode ser revertida e nenhum acionador será acionado. Quando uma tabela é descartada, todas as referências à tabela não são válidas e, portanto, se queremos usar a tabela novamente, ela deve ser recriada com todas as restrições de integridade e privilégios de acesso. Todos os relacionamentos com as outras tabelas também precisam ser localizados novamente.

Comando Truncar

O comando Truncar é um comando DDL e remove todas as linhas de uma tabela sem nenhuma condição especificada pelo usuário e libera o espaço usado pela tabela, mas a estrutura da tabela com suas colunas, índices e restrições permanece a mesma. Truncar elimina dados de uma tabela desalocando as páginas de dados usadas para armazenar os dados da tabela, e somente essas desalocações de páginas são mantidas no log de transações. Portanto, utiliza menos recursos de log de transações e recursos do sistema em comparação com outros comandos SQL relacionados, como Excluir. Portanto, Truncar é uma afirmação um pouco mais rápida que outras. A seguir está a sintaxe típica do comando Truncar.

TABELA TRUNCATE

Devemos substituir o nome da tabela, da qual queremos remover os dados inteiros, na sintaxe acima.

Truncar não pode ser usado em uma tabela que foi referenciada por uma restrição de chave estrangeira. Ele usa uma confirmação automaticamente antes de agir e outra confirmação posteriormente, para que a reversão da transação seja impossível e nenhum acionador seja acionado. Se queremos reutilizar a tabela, precisamos acessar apenas a definição de tabela existente no banco de dados.

Qual é a diferença entre Drop e Truncate?

Os comandos Soltar e Truncar são comandos DDL e também instruções de confirmação automática, para que as transações realizadas usando esses comandos não possam ser revertidas.

A principal diferença entre Soltar e Truncar é que o comando Soltar remove não apenas todos os dados de uma tabela, mas também remove a estrutura da tabela permanentemente do banco de dados com todas as referências, enquanto o comando Truncar remove apenas todas as linhas de uma tabela e preserva a estrutura da tabela e suas referências.

Se uma tabela for descartada, os relacionamentos com outras tabelas não serão mais válidos e as restrições de integridade e privilégios de acesso também serão removidos. Portanto, se for necessário reutilizar a tabela, ela deverá ser reconstruída com os relacionamentos, restrições de integridade e também os privilégios de acesso. Mas se uma tabela estiver truncada, a estrutura da tabela e suas restrições permanecerão para uso futuro e, portanto, qualquer uma das recriações acima não será necessária para reutilização.

Quando esses comandos são aplicados, devemos ser cautelosos ao usá-los. Além disso, devemos entender melhor a natureza desses comandos, como eles funcionam e também um planejamento cuidadoso antes de usá-los, a fim de evitar a falta de itens essenciais. Por fim, esses dois comandos podem ser usados ​​para limpar os bancos de dados de maneira rápida e fácil, consumindo menos recursos.