Différence entre supprimer et tronquer

Différence entre supprimer et tronquer

Supprimer vs truncate

Les deux commandes SQL (Structure Query Language), Supprimer et Truncate sont utilisées pour se débarrasser des données stockées dans les tableaux dans une base de données. Delete est une instruction DML (Data Manipulation Language) et il supprime certaines ou toutes les lignes d'une table. La «clause où» est utilisée pour spécifier les lignes qui doivent être supprimées, et si la clause WHERE n'est pas utilisée avec la déclaration de suppression, elle supprime toutes les données du tableau. Truncate est une instruction DDL (Data Definition Language), et elle supprime des données entières du tableau. Ces deux commandes ne détruisent pas la structure du tableau et les références au tableau, et seules les données sont supprimées au besoin.

Supprimer la déclaration

L'instruction de suppression permet à l'utilisateur de supprimer les données d'un tableau existant dans une base de données basée sur une condition spécifiée, et la «clause où» est utilisée pour déterminer cette condition. La commande de suppression est appelée exécution enregistrée, car elle supprime une seule ligne à la fois et conserve une entrée pour chaque suppression de ligne dans le journal des transactions. Donc, cela fait rendre l'opération plus lente. Delete est une instruction DML, et elle n'est donc pas automatiquement engagée lors de l'exécution de la commande. Par conséquent, la suppression de l'opération peut être annulée pour accéder à nouveau aux données, si nécessaire. Après l'exécution de la commande de suppression, il doit être engagé ou annulé afin d'enregistrer les modifications en permanence. Deteled instruction ne supprime pas la structure du tableau de la table de la base de données. Il ne traite pas également l'espace mémoire utilisé par la table.

La commande Syntax pour la suppression typique est indiquée ci-dessous.

Supprimer

ou

Supprimer d'où

Déclaration tronquée

La déclaration tronquée supprime toutes les données d'un tableau existant dans une base de données, mais il préserve la même structure de table, ainsi que les contraintes d'intégrité, les privilèges d'accès et les relations avec d'autres tables. Ainsi, il n'est pas nécessaire de définir à nouveau le tableau, et l'ancienne structure de table peut être utilisée, si l'utilisateur veut réutiliser le tableau. Truncate supprime les données entières en traitant les pages de données utilisées pour conserver les données, et seules ces efforts de page sont conservés dans le journal des transactions. Par conséquent, la commande Truncate n'utilise que moins de ressources de logicielle et de journal de transaction pour le fonctionnement, il est donc plus rapide que les autres commandes connexes. Truncate est une commande DDL, il utilise donc des engagements automobiles avant et après l'exécution de l'instruction. Par conséquent, Truncate ne peut pas faire reculer les données de quelque manière que ce soit. Il libère l'espace mémoire utilisé par la table après l'exécution. Mais une déclaration tronquée ne peut pas être appliquée sur les tables référencées par des contraintes de clé étrangère.

Voici la syntaxe commune pour une déclaration tronquée.

Table tronquée

Quelle est la différence entre supprimer et tronquer?

1. Supprimer et tronquer les commandes de supprimer les données des tables existantes dans une base de données sans nuire à la structure du tableau ou à d'autres références au tableau.

2. Cependant, la commande de suppression peut être utilisée pour supprimer des lignes spécifiques uniquement dans un tableau à l'aide d'une condition pertinente, ou pour supprimer toutes les lignes sans aucune condition, tandis que la commande tronquée peut être utilisée uniquement pour supprimer des données entières dans le tableau.

3. Delete est une commande DML, et elle peut faire reculer l'opération si nécessaire, mais troncate est une commande DDL, donc c'est une déclaration de validation automatique et ne peut pas être annulée de quelque manière que ce soit. Il est donc important d'utiliser attentivement cette commande dans la gestion de la base de données.

4. L'opération tronquée consomme moins de ressources système et de ressources de journal des transactions que l'opération de suppression, par conséquent, le tronqué est considéré comme plus rapide que la suppression.

5. De plus, Delete ne traite pas l'espace utilisé par la table, tandis que Truncate libère l'espace utilisé après l'exécution, donc la suppression n'est pas efficace en cas de suppression de toutes les données d'un tableau de base de données.

6. Cependant, le tronqué n'est pas autorisé à utiliser lorsque le tableau est référencé par une contrainte de clé étrangère, et dans ce cas, la commande de suppression peut être utilisée à la place.

7. Enfin, ces deux commandes présentent des avantages et des inconvénients à les appliquer dans les systèmes de gestion des bases de données et l'utilisateur doit être conscient d'utiliser ces commandes de manière appropriée pour obtenir de bons résultats.