Διαφορά μεταξύ περικοπής και διαγραφής

Διαφορά μεταξύ περικοπής και διαγραφής



Η δημιουργία και ο χειρισμός δεδομένων αποτελούν τη βάση των βάσεων δεδομένων και το ονομάζουμε DDL και DML αντίστοιχα. Το DDL είναι συντομογραφία για τη γλώσσα ορισμού δεδομένων. Θα μπορούσε είτε να δημιουργήσει είτε να τροποποιήσει τις δομές δεδομένων στις βάσεις δεδομένων και δεν θα μπορούσε να είναι μεταχειρισμένος για να αλλάξετε τα δεδομένα που υπάρχουν στους πίνακες. Για παράδειγμα, έχουμε εντολές που δημιουργούν απλώς έναν πίνακα με τα καθορισμένα χαρακτηριστικά πίνακα αλλά δεν προσθέτει ποτέ σειρές στον πίνακα. Όμως, ένα DML, η Γλώσσα Χειρισμού Δεδομένων, είναι σε θέση να προσθέτει, να διαγράφει ή να τροποποιεί δεδομένα στους πίνακες. Κατά γενικό κανόνα, οι εντολές DDL ασχολείται με τις δομές του πίνακα, ενώ οι εντολές DML ασχολείται με τα πραγματικά δεδομένα. Ας είναι, γιατί απλώς παρεκκλίνουμε από το θέμα «Διαφορά μεταξύ περικοπής και διαγραφής»; Υπάρχουν λόγοι για τους οποίους μιλήσαμε για το DML και το DDL. Θα το καταλάβατε στην ερχόμενη συζήτηση.

Τι είναι η εντολή Truncate;

Ο σκοπός μιας εντολής Truncate είναι να διαγράψετε ολόκληρο τον πίνακα. Έτσι, όταν χρησιμοποιείτε μια εντολή Truncate, θα χάσετε όλα τα δεδομένα στον πίνακα και θα πρέπει να είστε προσεκτικοί στη χρήση τους. Πείτε μας πώς να το χρησιμοποιήσουμε.



ο σύνταξη της περικοπής:



ΤΡΑΠΕΖΙ ΔΡΑΣΤΙΚΟΥόνομα πίνακα;

Εδώ, πρέπει να καθορίσετε το όνομα του πίνακα που θα πρέπει να διαγραφεί συνολικά. Αυτό διασφαλίζει ότι θα υπήρχε οποιοδήποτε τραπέζι στο χώρο της μνήμης. Ακολουθεί ένα παράδειγμα χρήσης του Truncate.

Ακολουθεί ο πίνακας 'υπάλληλος' και απλώς κοιτάξτε τις σειρές δεδομένων σε αυτόν.

emp-id emp-όνομα ονομασία
1011 Γρύλος Υπάλληλος
1012 Ρόδινος διαχειριστής
1014 Ομοφυλόφιλος Χρηματοδότηση



Τώρα, ας εκδώσουμε την παρακάτω εντολή στο υπάλληλος τραπέζι.

ΤΡΑΠΕΖΙ ΔΡΑΣΤΙΚΟΥυπάλληλος;

Εδώ είναι το αποτέλεσμα των παραπάνω σύνταξη και δεν υπάρχουν δεδομένα σε αυτό.

emp-id emp-όνομα ονομασία

Τι είναι η εντολή Διαγραφή;



Ο σκοπός μιας εντολής Διαγραφή είναι να αφαιρέσετε τις καθορισμένες σειρές από τον πίνακα. Εδώ χρησιμοποιείται η ρήτρα «Πού» για να καθορίσετε τις σειρές που πρέπει να διαγραφούν. Όταν δεν καθορίζουμε τις σειρές, η εντολή θα διαγράψει όλες τις σειρές στον πίνακα. Κοιτάξτε τη σύνταξη της.

ΔΙΑΓΡΑΦΗ ΑΠΟυπάλληλος;

Η παραπάνω σύνταξη διαγράφει όλες τις σειρές από τον πίνακα «υπάλληλος». Έτσι, ο προκύπτων πίνακας δεν θα περιέχει δεδομένα.

ΔΙΑΓΡΑΦΗ ΑΠΟυπάλληλοςΟΠΟΥemp-id = 1011;

Αυτή η δήλωση διαγράφει μόνο μια σειρά της οποίας το emp-id είναι 1011. Επομένως ο πίνακας που προκύπτει θα είναι όπως παρακάτω.

emp-id emp-όνομα ονομασία
1012 Ρόδινος διαχειριστής
1014 Ομοφυλόφιλος Χρηματοδότηση

Διαφορές:

  • Το Truncate είναι DDL. Η διαγραφή είναι DML:Έχουμε συζητήσει παραπάνω πώς λειτουργούν το DDL και το DML στην παραπάνω συζήτησή μας. Η εντολή Truncate είναι DDL και λειτουργεί σε επίπεδο δομής δεδομένων. Αλλά το Delete είναι μια εντολή DML και λειτουργεί στα δεδομένα του πίνακα. Άλλα παραδείγματα για το DDL είναι το CREATE και το ALTER. Με παρόμοιο τρόπο, θα μπορούσαμε να πούμε ότι οι εντολές όπως SELECT, UPDATE και INSERT είναι τέλεια παραδείγματα για ένα DML.
  • Πώς λειτουργεί η περικοπή και η διαγραφή:Μόλις εκδώσουμε την εντολή Truncate, ψάχνει ακριβώς για τον καθορισμένο πίνακα. Στη συνέχεια, αφαιρεί εντελώς όλα τα δεδομένα από τη μνήμη. Όμως η διαδικασία εργασίας είναι λίγο διαφορετική στην περίπτωση της Διαγραφής. Εδώ, τα πρωτότυπα δεδομένα πίνακα αντιγράφονται στο διάστημα που ονομάζεται 'Roll back' space πριν κάνετε τον πραγματικό χειρισμό δεδομένων. Στη συνέχεια, οι αλλαγές γίνονται στον πραγματικό χώρο δεδομένων πίνακα. Έτσι, και οι δύο διαφέρουν στον τρόπο λειτουργίας τους.

Κολοβός-> κατάργηση ολόκληρων δεδομένων από τον πίνακα -> Ο χώρος του πίνακα απελευθερώνεται τώρα.

Διαγράφω-> Αντιγράψτε τα αρχικά δεδομένα του πίνακα στο Roll Back space -> διαγράψτε τα καθορισμένα δεδομένα / ολόκληρο τον πίνακα -> Ο χώρος του πίνακα απελευθερώνεται αλλά ο χώρος Roll Back είναι γεμάτος.

  • Επιστροφή:Η επαναφορά είναι σαν μια εντολή Αναίρεσης στα αξεσουάρ της Microsoft. Χρησιμοποιείται για την ακύρωση των αλλαγών που κάναμε πρόσφατα, δηλαδή από το τελευταίο αποθηκευμένο σημείο. Για να εκτελεστεί η λειτουργία, τα δεδομένα θα πρέπει να αντιγραφούν στον χώρο Roll Back πριν από την επεξεργασία τους. Παρόλο που αυτά τα Roll back απαιτούν επιπλέον μνήμη, είναι εξαιρετικά χρήσιμα για να επιστρέψετε στο πρωτότυπο. Ειδικά, όταν κάνετε κάποια επεξεργασία κατά λάθος! Ας έρθουμε στο Περικοπή και Διαγραφή σε σχέση με το Roll back τώρα. Όπως συζητήσαμε παραπάνω, το Truncate δεν χρησιμοποιεί ποτέ χώρο επαναφοράς και δεν μπορούσαμε να επιστρέψουμε στα αρχικά δεδομένα. Ωστόσο, η εντολή Delete χρησιμοποιεί χώρο επαναφοράς και θα μπορούσαμε είτε να χρησιμοποιήσουμε το 'Commit' είτε το 'RollBack' για να αποδεχτούμε ή να ακυρώσουμε τις αλλαγές αντίστοιχα.
  • Ενεργοποιήσεις:Για όσους χρειάζονται μια εξήγηση σχετικά με τους κανόνες ετικέτας, ακολουθεί μια μικρή σημείωση. Οι κανόνες ενεργοποίησης είναι ένα προκαθορισμένο σύνολο λειτουργιών / λειτουργίας που πρέπει να ενεργοποιηθούν όταν ο πίνακας αντιμετωπίζει μια συγκεκριμένη κατάσταση. Για παράδειγμα, θα μπορούσαμε να προκαλέσουμε την αλλαγή του ποσού του μισθού όταν η εμπειρία ενός υπαλλήλου με το Εταιρία είναι περισσότερο από ένα χρόνο. Αυτοί οι ενεργοποιητές θα μπορούσαν να λειτουργήσουν και σε άλλους πίνακες. Για παράδειγμα, θα μπορούσαμε να ενημερώσουμε τον πίνακα χρηματοδότησης μόλις γίνει μια αύξηση μισθών για έναν υπάλληλο.

Το Truncate είναι μια εντολή DDL, η σκανδάλη δεν επιτρέπεται εδώ. Αλλά μια Διαγραφή είναι μια εντολή DML, επιτρέπονται τα Triggers εδώ.

  • Ποιο είναι πιο γρήγορο;Όπως μαντέψατε, η εντολή Truncate θα ήταν ταχύτερη από την εντολή Delete. Το πρώτο θα μπορούσε να αφαιρέσει όλα τα δεδομένα και δεν χρειάζεται να ελέγξετε για τυχόν συνθήκες που ταιριάζουν. Επίσης, τα αρχικά δεδομένα δεν αντιγράφονται στο χώρο επαναφοράς και αυτό εξοικονομεί πολύ χρόνο. Αυτοί οι δύο παράγοντες κάνουν το Truncate να λειτουργεί πιο γρήγορα από το Delete.
  • Θα μπορούσαμε να χρησιμοποιήσουμε τον όρο WHERE;Η ρήτρα «Πού» χρησιμοποιείται για τον καθορισμό συγκεκριμένων συνθηκών αντιστοίχισης και δεν έχει καμία σχέση με την Περικοπή. Καθώς ο Truncate δεν ψάχνει ποτέ για όποιες προϋποθέσεις ταιριάζει και απλώς αφαιρεί όλες τις σειρές, δεν θα μπορούσαμε να χρησιμοποιήσουμε τη ρήτρα «Πού» εδώ. Αλλά θα μπορούσαμε πάντα να καθορίσουμε την κατάσταση με τη βοήθεια της ρήτρας «όπου» στην εντολή Διαγραφή.
  • Ποιο καταλαμβάνει περισσότερο χώρο;Το κόψιμο δεν πρόκειται να χρησιμοποιήσει τον χώρο επαναφοράς και σώζει αυτήν τη μνήμη. Ωστόσο, η διαγραφή χρειάζεται ένα αντίγραφο ασφαλείας με τη μορφή χώρου επαναφοράς και ως εκ τούτου απαιτεί περισσότερο χώρο μνήμης από το κομμένο.

Αυτές είναι λοιπόν οι διαφορές και ας δούμε σε μορφή πίνακα.

ΝΟ Διαφορές σε Κολοβός Διαγράφω
1. DDL ή DML; Είναι DDL και λειτουργεί σε επίπεδο δομής δεδομένων. Άλλα παραδείγματα για το DDL είναι το CREATE και το ALTER. Είναι μια εντολή DML και λειτουργεί στα δεδομένα του πίνακα. Το DML σημαίνει γλώσσα χειρισμού δεδομένων. Οι εντολές όπως SELECT, UPDATE και INSERT είναι τέλεια παραδείγματα για ένα DML. Το DML σημαίνει γλώσσα χειρισμού δεδομένων.

2. Πώς λειτουργεί; Μόλις εκδώσουμε την εντολή Περικοπή, αναζητά ακριβώς τον καθορισμένο πίνακα. Στη συνέχεια, αφαιρεί εντελώς όλα τα δεδομένα από τη μνήμη. Εδώ, τα πρωτότυπα δεδομένα πίνακα αντιγράφονται στο διάστημα που ονομάζεται 'Roll back' space πριν κάνετε τον πραγματικό χειρισμό δεδομένων. Στη συνέχεια, οι αλλαγές γίνονται στον πραγματικό χώρο δεδομένων πίνακα.
3. RollBack Η εντολή Truncate δεν χρησιμοποιεί ποτέ χώρο επαναφοράς και δεν μπορέσαμε να επιστρέψουμε στα αρχικά δεδομένα. Ο χώρος επαναφοράς είναι αποκλειστικός και καταλαμβάνεται όταν εκδίδονται οι εντολές DML. Η εντολή Διαγραφή χρησιμοποιεί χώρο επαναφοράς και θα μπορούσαμε είτε να χρησιμοποιήσουμε το 'Commit' είτε το 'RollBack' για να αποδεχτούμε ή να ακυρώσουμε τις αλλαγές αντίστοιχα.

Τέσσερις. Ενεργοποιητές Το Truncate είναι μια εντολή DDL, δεν επιτρέπονται ενεργοποιήσεις. Η διαγραφή είναι μια εντολή DML, επιτρέπονται οι κανόνες ετικέτας εδώ.

5. Ποιο είναι πιο γρήγορο; Θα μπορούσε να αφαιρέσει όλα τα δεδομένα και δεν χρειάζεται να ελέγξετε για τυχόν συνθήκες που ταιριάζουν. Επίσης, τα αρχικά δεδομένα δεν αντιγράφονται στο χώρο επαναφοράς και αυτό εξοικονομεί πολύ χρόνο. Αυτοί οι δύο παράγοντες κάνουν το Truncate να λειτουργεί πιο γρήγορα από το Delete.

Χρησιμοποιεί τον χώρο επαναφοράς και πρέπει πάντα να διατηρούνται τα αρχικά δεδομένα. Αυτό είναι ένα επιπλέον βάρος και, με τη σειρά του, απαιτεί πολύ χρόνο από το Truncate.
6. Θα μπορούσαμε να χρησιμοποιήσουμε τον όρο WHERE; Καθώς ο Truncate δεν ψάχνει ποτέ για όποιες προϋποθέσεις ταιριάζει και απλώς αφαιρεί όλες τις σειρές, δεν θα μπορούσαμε να χρησιμοποιήσουμε τη ρήτρα «Πού» εδώ. Αλλά θα μπορούσαμε πάντα να καθορίσουμε τη συνθήκη με τη βοήθεια της ρήτρας «όπου» στην εντολή Διαγραφή.
7. Ποιο καταλαμβάνει περισσότερο χώρο; Το κόψιμο δεν πρόκειται να χρησιμοποιήσει τον χώρο επαναφοράς και σώζει αυτήν τη μνήμη. Χρειάζεται ένα αντίγραφο ασφαλείας με τη μορφή χώρου επαναφοράς και ως εκ τούτου απαιτεί περισσότερο χώρο μνήμης από το κομμένο.

Η γνώση των διαφορών μεταξύ των δύο οντοτήτων διευρύνει το η γνώση και στους δύο! Έχετε προσγειωθεί σε μια σωστή διαδρομή, δηλαδή στην ιστοσελίδα για να κατανοήσετε τις διαφορές, ειδικά, μεταξύ των εντολών περικοπής και διαγραφής. Ελπίζω να είστε πλέον ξεκάθαροι με τις διαφορές του και ενημερώστε μας αν σας βοηθήσαμε να το κατανοήσετε. Θα μπορούσατε επίσης να μας βοηθήσετε να επισημάνουμε ποια απομένουν!

Δημοφιλείς Αναρτήσεις

Παρακολουθείτε την Jane the Virgin; Εδώ είναι 5 λόγοι που πρέπει

Για εσάς που δεν συντονίζεστε κάθε εβδομάδα με το Jane the Virgin του CW, σκεφτείτε αυτήν την παρέμβασή σας. Είμαι εδώ γιατί θέλω το καλύτερο για εσάς ψυχαγωγικά και ανησυχώ για το πόσο μεγαλείο θα χάσετε αν συνεχίσετε σε αυτόν τον δρόμο. Γι 'αυτό, λάβετε υπόψη σας αυτούς τους πέντε λόγους και αποδεχτείτε το δώρο που είναι η Τζέιν στη ζωή σας στην τηλεόραση. Υπόσχομαι ότι θα με ευχαριστήσεις αργότερα. 1. Οι σχέσεις μητέρας-κόρης μεταξύ Άλμπα, Ξιομάρα και Τζέιν είναι πολύ αξιαγάπητες. Έπρεπε να ήξερα ότι αυτό το στοιχείο θα ήταν καλό, λαμβάνοντας υπόψη ότι η δημιουργός της παράστασης (Jennie Snyder Urman) παλαιότερα είχε συμπαρουσιάσει τη μητέρα (με λογοπαίγνια) όλων των εκπομπών μητέρας-κόρης Gilmore Girls. Και τώρα, έχω ερωτευτεί τη δυναμική Alba/Xiomara/Jane για όλους τους ίδιους λόγους που έκανα πριν από χρόνια με τους Lorelai και Rory - γιατί παρά το δράμα, τις διαφωνίες και τις αμφισβητήσιμες τακτικές γονέων (η προσωπική μου αγαπημένη ήταν η Xo χρησιμοποιώντας 'Milkshake' του Kelis για να προστατέψετε τη νεαρή Jane από μια ραγισμένη καρδιά), μερικές φορές χρειάζεστε πραγματικά τη μαμά σας. 2. Εκτός αν είσαι η Πέτρα και η μητέρα σου είναι η Μάγδα (yikes). Για κάθε συγκινητική στιγμή με τα τρία παραπάνω, υπάρχει μια εξίσου τρομακτική μεταξύ αυτού του δίδυμου μητέρας-κόρης (εννοώ, η Μάγδα χτύπησε την Πέτρα

5 A Day: Το σώμα της Halle Berry, «PMS buddy» και άλλα

Γεια σε όλους! Εντάξει, μια γρήγορη εξήγηση για την τυχαία φωτογραφία: Λαχταρώ εντελώς κολοκυθάκι-συγκεκριμένα σούπα κολοκύθας. Μμμμμ. (Είναι γεμάτο με βιταμίνη Α, οπότε ίσως έχω έλλειψη σήμερα.) Και, εδώ είναι μερικές ιστορίες υγείας που κάνουν νέα σήμερα:

Διαφορά μεταξύ δαπάνης κεφαλαίου και δαπανών εσόδων

Είναι φυσικό για κάθε επιχείρηση να επιβαρύνεται με έξοδα κατά την ύπαρξή της. Στην επιχείρηση, αυτά τα κόστη αναφέρονται συνήθως ως δαπάνες. Συνήθως, μια επιχείρηση

Διαφορά μεταξύ αμνηστίας και χάρης

Αμνηστία εναντίον συγχώρησης Η αμνηστία και η χάρη είναι εξουσίες που παραχωρούνται στην ανώτατη εξουσία ενός έθνους να δίνει συγχώρεση σε άτομα ή σε ομάδες ατόμων που

Διαφορά μεταξύ διακρίσεων και ρατσισμού

Ο όρος «ρατσισμός» αναφέρεται σε προκαταλήψεις, μίσος και παρανοήσεις εναντίον ενός ατόμου ή μιας ομάδας ατόμων με βάση την ιδέα της φυλετικής ανωτερότητας.

Διαφορά μεταξύ διανομέων, διακοπτών και δρομολογητών

Hubs, Switches vs Routers Κατά τη σύνδεση του οικιακού σας δικτύου, υπάρχουν τρεις συνηθισμένοι όροι που εμφανίζονται συνεχώς. διανομέα, διακόπτες και δρομολογητές. Είναι λίγο