Diferença entre soltar e truncar

Diferença entre soltar e truncar
Diferença entre soltar e truncar

Vídeo: Diferença entre soltar e truncar

Vídeo: Diferença entre soltar e truncar
Vídeo: 🔥BACHARELADO E TECNÓLOGO: QUAL A DIFERENÇA? | ALGUM É MELHOR? 2024, Julho
Anonim

Soltar vs Truncar

Drop e Truncate são duas instruções SQL (Structured Query Language) que são usadas em Sistemas de Gerenciamento de Banco de Dados, onde desejamos remover registros de dados de um banco de dados. As instruções Drop e Truncate removem todos os dados em uma tabela e a instrução SQL relacionada. A operação de exclusão não é eficaz neste caso porque usa mais espaços de armazenamento do que Descartar e Truncar.

No caso, se quisermos descartar uma tabela em um banco de dados com todos os seus dados, o SQL nos permite fazer 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. Ele exclui todas as informações de uma tabela, bem como a estrutura da tabela do banco de dados. Além disso, podemos querer nos livrar de todos os dados em uma tabela simplesmente, mas sem a tabela, e podemos usar a instrução Truncate em SQL em tal cenário. Truncar também é um comando DDL e elimina todas as linhas em uma tabela, mas preserva a mesma definição da tabela para uso futuro.

Comando Soltar

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 descarta totalmente 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 simplesmente substituir o nome da tabela que queremos remover do banco de dados no exemplo acima do comando Drop.

É importante ress altar 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 descartada 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 declaração de confirmação automática, a operação, uma vez disparada, não pode ser revertida e nenhum gatilho será disparado. Quando uma tabela é descartada, todas as referências à tabela não serão válidas e, portanto, se quisermos usar a tabela novamente, ela deverá ser recriada com todas as restrições de integridade e privilégios de acesso. Todos os relacionamentos com as outras tabelas também devem ser localizados novamente.

Truncate command

Truncate command é um comando DDL, e remove todas as linhas em 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ágina são mantidas no log de transações. Portanto, ele utiliza menos recursos de log de transações e recursos do sistema em comparação com outros comandos SQL relacionados, como Excluir. Então Truncate é uma declaração um pouco mais rápida do que outras. A seguir está a sintaxe típica para o comando Truncar.

TRUNCATE TABLE

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

Truncate não pode ser usado em uma tabela que foi referenciada por uma restrição de chave estrangeira. Ele usa um commit automaticamente antes de agir e outro commit depois, então a reversão da transação é impossível e nenhum gatilho é acionado. Se quisermos reutilizar a tabela, precisamos apenas acessar a definição da tabela existente no banco de dados.

Qual é a diferença entre Soltar e Truncar?

Ambos os comandos Drop e Truncate são comandos DDL e também instruções de auto commit para que as transações executadas usando esses comandos não possam ser revertidas.

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

Se uma tabela for eliminada, 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 a tabela precisar ser reutilizada, ela deverá ser reconstruída com os relacionamentos, as restrições de integridade e também os privilégios de acesso. Mas se uma tabela for truncada, a estrutura da tabela e suas restrições permanecem para uso futuro e, portanto, nenhuma das recriações acima é necessária para reutilização.

Quando esses comandos são aplicados, devemos ser cautelosos ao usá-los. Além disso, devemos ter um melhor entendimento sobre a natureza desses comandos, como eles funcionam e também um planejamento cuidadoso antes de usá-los para evitar a f alta de elementos essenciais. Finalmente, ambos os comandos podem ser usados para limpar os bancos de dados de forma rápida e fácil, consumindo menos recursos.

Recomendado: