Différence entre tronquer et supprimer

La création et la manipulation de données constituent la base des bases de données et nous les appelons respectivement DDL et DML. Un DDL est une abréviation pour le langage de définition de données. Cela pourrait créer ou modifier les structures de données dans les bases de données et celles-ci ne pourraient pas être utilisées pour modifier les données présentes sur les tables. Par exemple, nous avons des commandes qui ne font que créer une table avec les attributs de table spécifiés, mais cela n’ajoute jamais de lignes dans la table. Mais un langage DML, le langage de manipulation de données, est capable d’ajouter, de supprimer ou de modifier des données dans les tables. En règle générale, les commandes DDL traitent les structures de table, tandis que les commandes DML traitent des données réelles. Qu'on se le permette, pourquoi s'écarte-t-on simplement du sujet «Différence entre tronquer et supprimer»? Il y a des raisons pour lesquelles nous avons parlé de la DML et de la DDL. Vous comprendriez dans la discussion à venir.

Qu'est-ce qu'une commande tronquer?

Le but d'une commande Truncate est de supprimer la table entière. Ainsi, lorsque vous utilisez une commande Truncate, vous perdez toutes les données de la table et vous devez être prudent dans son utilisation. Dites-nous comment l'utiliser.

La syntaxe de Truncate:

        TABLE TRUNCATE nom de la table;

Ici, vous devez spécifier le nom de la table qui doit être supprimée dans son ensemble. Cela garantit qu’il n’y aurait aucune table dans l’espace mémoire. Voici un exemple d'utilisation de Truncate.

Ci-dessous se trouve la table 'employé' et il suffit de regarder les lignes de données qu'il contient.

emp-id emp-name la désignation
1011 Jack Employé de bureau
1012 Rosé Admin
1014 Nancy La finance

Lançons maintenant la commande ci-dessous sur la table employee.

        TABLE TRUNCATE employé;

Voici la résultante de la syntaxe ci-dessus et il n'y a aucune donnée dedans.

emp-id emp-name la désignation

Qu'est-ce qu'une commande de suppression??

Le but d'une commande Delete est de supprimer les lignes spécifiées de la table. Ici, la clause 'Where' est utilisée ici pour spécifier les lignes à supprimer. Lorsque nous ne spécifions pas les lignes, la commande supprime toutes les lignes de la table. Il suffit de regarder la syntaxe.

        SUPPRIMER DE employé;

La syntaxe ci-dessus supprime toutes les lignes de la table 'employee'. Donc, la table résultante ne contiendrait aucune donnée.

SUPPRIMER DE employé emp-id = 1011;

Cette instruction supprime simplement une seule ligne dont emp-id est 1011. La table résultante serait alors la suivante.

emp-id emp-name la désignation
1012 Rosé Admin
1014 Nancy La finance

Différences:

  • Truncate est un DDL; Delete est un DML: Nous avons discuté ci-dessus comment le DDL et le DML fonctionnent dans notre discussion ci-dessus. La commande Truncate est une DDL et opère au niveau de la structure de données. Mais Supprimer est une commande DML qui opère sur les données de la table. CREATE et ALTER sont d’autres exemples de DDL. De manière similaire, nous pourrions dire que les commandes telles que SELECT, UPDATE et INSERT sont des exemples parfaits pour un DML..
  • Comment fonctionnent les fonctions de tronquage et de suppression: Dès que nous émettons la commande Truncate, elle recherche simplement la table spécifiée. Ensuite, il supprime complètement toutes les données de la mémoire. Mais la procédure de travail est peu différente dans le cas d’une suppression. Ici, les données de la table d'origine sont copiées dans un espace appelé espace de restauration avant de manipuler les données. Ensuite, les modifications sont effectuées sur l'espace de données de la table réelle. Donc, les deux diffèrent dans la façon dont ils travaillent.

Tronquer -> supprimer des données entières de la table -> L'espace table est libéré maintenant.

Effacer -> Copier les données de la table d'origine dans l'espace de restauration -> supprimer les données spécifiées / la table entière -> l'espace de la table est libéré mais l'espace de restauration est rempli.

  • Reculer: Un retour en arrière est comme une commande Annuler dans nos accessoires Microsoft. Il est utilisé pour annuler les modifications que nous avons apportées récemment, à savoir depuis le dernier point enregistré. Pour effectuer l'opération, les données doivent être copiées dans l'espace de restauration avant leur modification. Bien que ces restaurations nécessitent de la mémoire supplémentaire, elles sont extrêmement utiles pour revenir à l'original. Surtout quand vous en retouchez par erreur! Venons-en aux troncatures et aux suppressions en ce qui concerne le recul. Comme nous en avons discuté ci-dessus, Truncate n'utilise jamais d'espace de restauration et nous ne pouvions pas revenir aux données d'origine. Mais la commande Supprimer utilise un espace réduit et nous pourrions simplement utiliser «Commit» ou «RollBack» pour accepter ou annuler les modifications, respectivement..
  • Déclencheurs: Pour ceux qui ont besoin d'une explication sur les déclencheurs, voici une petite note. Les déclencheurs sont un ensemble prédéfini d'opérations / d'opérations qui doivent être activés lorsque la table rencontre une condition particulière. Par exemple, nous pourrions déclencher une modification du montant du salaire lorsque l'expérience d'un employé au sein de l'entreprise est supérieure à un an. Ces déclencheurs pourraient également fonctionner sur d'autres tables. Par exemple, nous pourrions mettre à jour le tableau des finances dès qu'une hausse de salaire a été réalisée pour un employé..

Truncate est une commande DDL, le déclencheur n'est pas autorisé ici. Mais une suppression est une commande DML, les déclencheurs sont autorisés ici.

  • Lequel est plus vite? Comme vous l'avez deviné, la commande Truncate serait plus rapide que la commande Delete. Le premier peut supprimer toutes les données et il n’est pas nécessaire de vérifier les conditions correspondantes. En outre, les données d'origine ne sont pas copiées dans l'espace de restauration, ce qui permet de gagner beaucoup de temps. Ces deux facteurs font que Truncate fonctionne plus rapidement que le programme Supprimer..
  • Peut-on utiliser la clause WHERE? La clause 'Where' est utilisée pour spécifier certaines conditions de correspondance et n'a rien à voir avec Truncate. Comme Truncate ne recherche jamais de conditions correspondantes et supprime simplement toutes les lignes, nous ne pouvons pas utiliser de clause 'Where' ici. Mais nous pourrions toujours spécifier la condition à l'aide de la clause 'where' dans la commande Delete.
  • Qui occupe plus d'espace? La troncature ne va pas utiliser l'espace de restauration et enregistre cette mémoire. Mais supprimer nécessite une sauvegarde sous la forme d’espace de restauration et nécessite donc plus d’espace mémoire que le fichier tronqué..

Donc, ce sont les différences et examinons sous forme de tableau.

S.No Différences dans Tronquer Effacer
1. DDL ou DML? C'est une DDL et cela opère au niveau de la structure de données. CREATE et ALTER sont d’autres exemples de DDL.. C'est une commande DML qui opère sur les données de la table. Le DML est l'acronyme de Data Manipulation Language. Les commandes telles que SELECT, UPDATE et INSERT sont des exemples parfaits pour un DML. Le DML est synonyme de langage de manipulation de données.

2. Comment ça marche? Dès que nous émettons la commande Truncate, elle recherche simplement la table spécifiée. Ensuite, il supprime complètement toutes les données de la mémoire. Ici, les données de la table d'origine sont copiées dans un espace appelé espace de restauration avant de manipuler les données. Ensuite, les modifications sont effectuées sur l'espace de données de la table réelle..
3. RollBack La commande Truncate n'utilise jamais d'espace de restauration et nous ne pouvions pas revenir aux données d'origine. Un espace de restauration est exclusif et est occupé lorsque les commandes DML sont émises.. La commande Delete utilise un espace de restauration et nous pouvons simplement utiliser 'Commit' ou 'RollBack' pour accepter ou annuler les modifications..

4. Déclencheurs Truncate est une commande DDL, les déclencheurs ne sont pas autorisés. Supprimer est une commande DML, les déclencheurs sont autorisés ici.

5. Lequel est plus vite? Il pourrait supprimer toutes les données et il n'est pas nécessaire de vérifier les conditions correspondantes. En outre, les données d'origine ne sont pas copiées dans l'espace de restauration, ce qui permet de gagner beaucoup de temps. Ces deux facteurs font que Truncate fonctionne plus rapidement que le programme Supprimer..

Il utilise l'espace de restauration et les données d'origine doivent toujours y être conservées. C’est un fardeau supplémentaire qui, à son tour, prend beaucoup de temps que le Troncature..
6. Peut-on utiliser la clause WHERE? Comme Truncate ne recherche jamais de conditions correspondantes et supprime simplement toutes les lignes, nous ne pouvons pas utiliser de clause 'Where' ici. Mais nous pourrions toujours spécifier la condition à l'aide de la clause 'where' dans la commande Delete.
7. Qui occupe plus d'espace? La troncature ne va pas utiliser l'espace de restauration et enregistre la mémoire. Il a besoin d’une sauvegarde sous la forme d’espace de restauration et nécessite donc plus d’espace mémoire que le disque tronqué..

Connaître les différences entre deux entités élargit les connaissances sur les deux! Vous avez atterri sur le bon chemin, c'est-à-dire la page Web, pour comprendre les différences, en particulier entre les commandes tronquer et supprimer. J'espère que vous êtes maintenant au clair avec ses différences et faites-nous savoir si nous vous avons aidé à comprendre. Vous pouvez également nous aider en indiquant ce qui a été laissé!