MYSQL – ALTER, DROP, RENAME, MODIFY

⚡ Έξυπνη Σύνοψη

Οι ALTER, DROP, RENAME και MODIFY είναι οι MySQL Εντολές που αναδιαμορφώνουν μια βάση δεδομένων αφού αυτή είναι ήδη σε χρήση. Προσθέτουν, αφαιρούν, μετονομάζουν και επαναπροσδιορίζουν αντικείμενα όπως πίνακες και στήλες, χωρίς να απορρίπτουν τις γραμμές που έχουν ήδη αποθηκευτεί.

  • Εντολή ALTER: Η εντολή ALTER TABLE επαναπροσδιορίζει ένα αντικείμενο που υπάρχει ήδη, επομένως ένα ενεργό σχήμα απορροφά νέες απαιτήσεις χωρίς αναδόμηση.
  • ΠΡΟΣΘΗΚΗ ΣΤΗΛΗΣ: Η εντολή ALTER TABLE ADD COLUMN προσθέτει ένα πεδίο και οι υπάρχουσες γραμμές διατηρούν κάθε τιμή που είχαν ήδη.
  • 🗑️ Εντολή DROP: Η εντολή DROP διαγράφει οριστικά: μια βάση δεδομένων, έναν πίνακα ή μια μεμονωμένη στήλη μέσω της εντολής ALTER TABLE DROP COLUMN.
  • 🔁 Εντολή ΜΕΤΟΝΟΜΑΣΙΑΣ: Η εντολή ΜΕΤΟΝΟΜΑΣΙΑ ΠΙΝΑΚΑ αλλάζει μόνο το όνομα ενός πίνακα και δεν χάνονται δεδομένα μέσα σε αυτόν.
  • Λέξη-κλειδί ΑΛΛΑΓΗΣ: Η συνάρτηση CHANGE μετονομάζει μια στήλη και επαναπροσδιορίζει τον τύπο και τους περιορισμούς της σε μία εντολή, επομένως απαιτούνται και τα δύο ονόματα στηλών.
  • 🧩 ΤΡΟΠΟΠΟΙΗΣΗ Λέξης-κλειδιού: Η MODIFY αλλάζει τον τύπο και τους περιορισμούς ενώ διατηρείping το όνομα, η ασφαλέστερη επιλογή για επεξεργασία μόνο με τύπο.
  • 📍 ΜΕΤΑ Λέξη-κλειδί: Η συνάρτηση AFTER τοποθετεί μια νέα στήλη που προστέθηκε σε μια επιλεγμένη θέση αντί για το τέλος του πίνακα.

MySQL ΑΛΛΑΓΗ, ΑΠΟΡΡΙΨΗ, ΜΕΤΟΝΟΜΑΣΙΑ και ΤΡΟΠΟΠΟΙΗΣΗ

Τι είναι η εντολή ALTER στο MySQL?

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

Οι επιχειρηματικές απαιτήσεις σπάνια παραμένουν σταθερές και ο σχεδιασμός μιας βάσης δεδομένων πρέπει να εξελίσσεται μαζί τους. Ας υποθέσουμε ότι ο σχεδιασμός της βάσης δεδομένων Myflix έχει υλοποιηθεί και οι χρήστες εργάζονται με αυτήν, και μόνο τότε η ομάδα συνειδητοποιεί ότι έχουν παραλειφθεί ζωτικές πληροφορίες. Κανείς δεν θέλει να χάσει τις υπάρχουσες γραμμές. Απλώς θέλει να καταγράψει τις νέες πληροφορίες παράλληλα με αυτές.

Το ALTER καλύπτει ακριβώς αυτήν την περίπτωση. Μπορεί να αλλάξει τον τύπο δεδομένων ενός πεδίου από συμβολοσειρά σε αριθμό, να μετονομάσει ένα πεδίο ή να προσθέσει μια εντελώς νέα στήλη σε έναν πίνακα, όλα αυτά ενώ τα δεδομένα που είναι ήδη αποθηκευμένα στον πίνακα παραμένουν ανέπαφα.

Αφού καθοριστεί ο σκοπός της εντολής, το επόμενο βήμα είναι η σύνταξη που την εκτελεί.

MySQL Σύνταξη ALTER

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

ALTER TABLE `table_name` ADD COLUMN `column_name` `data_type`;

ΕΔΩ

  • "ΑΛΛΟΣ ΠΙΝΑΚΑ "όνομα_πίνακα"" είναι η εντολή που λέει MySQL διακομιστή για να τροποποιήσει τον πίνακα με το όνομα "table_name".
  • "ΠΡΟΣΘΗΚΗ ΣΤΗΛΗΣ "όνομα_στήλης" "τύπος_δεδομένων"" είναι η εντολή που λέει MySQL διακομιστή για να προσθέσει μια νέα στήλη με όνομα `column_name` με τον τύπο δεδομένων `data_type`.

Ας υποθέσουμε ότι το Myflix έχει εισαγάγει την ηλεκτρονική χρέωση και πληρωμές. Για να την υποστηρίξει, πρέπει να προστεθεί ένα πεδίο για τον αριθμό της πιστωτικής κάρτας στον πίνακα μελών. Πριν κάνετε οποιαδήποτε τροποποίηση, αξίζει να εξετάσετε τη δομή του πίνακα όπως έχει. Το σενάριο που φαίνεται παρακάτω το κάνει αυτό.

SHOW COLUMNS FROM `members`;
Πεδίο Χαρακτηριστικά Null Κλειδί Προεπιλογή Εξτρα
αριθμός μέλους int (11) ΟΧΙ PRI Τιμή NULL αυτόματη_αύξηση
πλήρη_ονόματα varchar(350) ΟΧΙ Τιμή NULL
των δύο φύλων varchar(6) ΝΑΙ Τιμή NULL
ημερομηνία_γέννησης Ραντεβού ΝΑΙ Τιμή NULL
φυσική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
ταχυδρομική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
αριθμός_επαφής varchar(75) ΝΑΙ Τιμή NULL
ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ varchar(255) ΝΑΙ Τιμή NULL

💡 Σημείωση για το int(11): Ο αριθμός στις παρενθέσεις είναι μόνο το πλάτος εμφάνισης. MySQL Η έκδοση 8.0.17 το καταργούσε για ακέραιους τύπους, επομένως ένας σύγχρονος διακομιστής αναφέρει αυτήν τη στήλη απλώς ως intΤο μέγεθος αποθήκευσης παραμένει αμετάβλητο.

Το παρακάτω σενάριο προσθέτει το νέο πεδίο στον πίνακα μελών.

ALTER TABLE `members` ADD COLUMN `credit_card_number` VARCHAR(25);

Η εκτέλεση αυτού του σεναρίου στο myflixdb προσθέτει μια στήλη με όνομα credit_card_number στον πίνακα μελών με τύπο δεδομένων VARCHAR. Η εκτέλεση του σεναρίου SHOW COLUMNS ξανά δίνει το ακόλουθο αποτέλεσμα.

Πεδίο Χαρακτηριστικά Null Κλειδί Προεπιλογή Εξτρα
αριθμός μέλους int (11) ΟΧΙ PRI Τιμή NULL αυτόματη_αύξηση
πλήρη_ονόματα varchar(350) ΟΧΙ Τιμή NULL
των δύο φύλων varchar(6) ΝΑΙ Τιμή NULL
ημερομηνία_γέννησης Ραντεβού ΝΑΙ Τιμή NULL
φυσική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
ταχυδρομική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
αριθμός_επαφής varchar(75) ΝΑΙ Τιμή NULL
ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ varchar(255) ΝΑΙ Τιμή NULL
αριθμός πιστωτικής κάρτας varchar(25) ΝΑΙ Τιμή NULL

Η επισημασμένη γραμμή επιβεβαιώνει ότι ο αριθμός_πιστωτικής_κάρτας_έχει προστεθεί στον πίνακα μελών και τα δεδομένα που υπάρχουν ήδη στις άλλες στήλες δεν επηρεάζονται από την προσθήκη.

Η προσθήκη μιας στήλης είναι μόνο η μισή ιστορία. Ένα σχήμα πρέπει επίσης να απορρίψει αντικείμενα που δεν χρειάζεται πλέον, κάτι που είναι η δουλειά της εντολής DROP.

Τι είναι η εντολή DROP στο MySQL?

Η εντολή DROP διαγράφει οριστικά ένα αντικείμενο. Χρησιμοποιείται για να

  1. Διαγραφή μιας βάσης δεδομένων από το MySQL διακομιστής.
  2. Διαγράψτε ένα αντικείμενο, όπως έναν πίνακα ή μια στήλη, από μια βάση δεδομένων.

⚠️ Προειδοποίηση: Η συνάρτηση DROP δεν είναι αναστρέψιμη. Ούτε το αντικείμενο ούτε οι γραμμές μέσα σε αυτό μπορούν να ανακτηθούν χωρίς αντίγραφο ασφαλείας, επομένως εκτελέστε μια εντολή SELECT στον στόχο και επιβεβαιώστε πρώτα το αντίγραφο ασφαλείας.

Πτώσηping μια στήλη

Στο παραπάνω παράδειγμα ALTER, μια στήλη με το όνομα credit_card_number προστέθηκε στον πίνακα μελών. Ας υποθέσουμε ότι η λειτουργία ηλεκτρονικής χρέωσης αναβάλλεται και ότι αυτή η στήλη πρέπει να καταργηθεί ξανά. Το ακόλουθο σενάριο το κάνει.

ALTER TABLE `members` DROP COLUMN `credit_card_number`;

Η εκτέλεση του σεναρίου διαγράφει τη στήλη credit_card_number από τον πίνακα μελών. Η εκ νέου καταγραφή των στηλών επιβεβαιώνει το αποτέλεσμα.

SHOW COLUMNS FROM `members`;
Πεδίο Χαρακτηριστικά Null Κλειδί Προεπιλογή Εξτρα
αριθμός μέλους int (11) ΟΧΙ PRI Τιμή NULL αυτόματη_αύξηση
πλήρη_ονόματα varchar(350) ΟΧΙ Τιμή NULL
των δύο φύλων varchar(6) ΝΑΙ Τιμή NULL
ημερομηνία_γέννησης Ραντεβού ΝΑΙ Τιμή NULL
φυσική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
ταχυδρομική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
αριθμός_επαφής varchar(75) ΝΑΙ Τιμή NULL
ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ varchar(255) ΝΑΙ Τιμή NULL

Ο αριθμός της πιστωτικής κάρτας έχει εξαφανιστεί από τη λίστα πεδίων.

ΠΤΡΑΠΕΖΙ ΠΤΩΣΗΣ

Η σύνταξη για την απόρριψη ολόκληρου πίνακα από μια βάση δεδομένων έχει ως εξής.

DROP TABLE `sample_table`;

Εφαρμοσμένη σε ένα πραγματικό αντικείμενο, η πρόταση μοιάζει με αυτό.

DROP TABLE `categories_archive`;

Η εκτέλεση του διαγράφει από τη βάση δεδομένων τον πίνακα με το όνομα `categories_archive` και κάθε γραμμή μέσα σε αυτόν.

ΑΠΟΣΤΟΛΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ

Η ίδια λέξη-κλειδί καταργεί ένα ολόκληρο σχήμα. Η προσθήκη της συνάρτησης IF EXISTS καταστέλλει το σφάλμα που MySQL αυξάνεται όταν ο στόχος έχει ήδη εξαφανιστεί, κάτι που είναι χρήσιμο μέσα σε σενάρια που εκτελούνται περισσότερες από μία φορές.

DROP DATABASE IF EXISTS `myflixdb_backup`;

Η αφαίρεση ενός αντικειμένου είναι οριστική. Όταν το ίδιο το αντικείμενο θα πρέπει να παραμείνει και μόνο το όνομά του είναι λάθος, η εντολή RENAME είναι το σωστό εργαλείο.

Τι είναι η εντολή RENAME στο MySQL?

Η εντολή RENAME αλλάζει το όνομα ενός υπάρχοντος αντικειμένου βάσης δεδομένων, όπως ενός πίνακα ή μιας στήλης, σε ένα νέο όνομα. Η μετονομασία ενός πίνακα δεν έχει ως αποτέλεσμα την απώλεια οποιουδήποτε από τα δεδομένα που περιέχονται σε αυτόν.

Η εντολή έχει την ακόλουθη βασική σύνταξη.

RENAME TABLE `current_table_name` TO `new_table_name`;

Για να μετονομάσετε τον πίνακα movierentals σε movie_rentals, χρησιμοποιείται το παρακάτω σενάριο.

RENAME TABLE `movierentals` TO `movie_rentals`;

Η εκτέλεσή του μετονομάζει τον πίνακα `movierentals` σε `movie_rentals`. Επειδή η μετονομασία είναι μόνο μια αλλαγή ετικέτας, η ίδια εντολή αντίστροφα επαναφέρει το αρχικό όνομα.

RENAME TABLE `movie_rentals` TO `movierentals`;

Η εντολή RENAME TABLE χειρίζεται το όνομα ενός πίνακα. Μετονομασία ενός στήλη, και η αλλαγή αυτού που περιέχει, είναι το έργο της λέξης-κλειδιού CHANGE.

Λέξη-κλειδί ΑΛΛΑΓΗΣ

Η λέξη-κλειδί CHANGE σάς επιτρέπει να

  1. Αλλαγή του ονόματος μιας στήλης
  2. Αλλαγή του τύπου δεδομένων στήλης
  3. Αλλαγή των περιορισμών στηλών

Ας εξετάσουμε ένα παράδειγμα. Το πεδίο full_names στον πίνακα members είναι τύπου δεδομένων varchar με πλάτος 350, όπως επιβεβαιώνει το παρακάτω σενάριο.

SHOW COLUMNS FROM `members`;
Πεδίο Χαρακτηριστικά Null Κλειδί Προεπιλογή Εξτρα
αριθμός μέλους int (11) ΟΧΙ PRI Τιμή NULL αυτόματη_αύξηση
πλήρη_ονόματα varchar(350) ΟΧΙ Τιμή NULL
των δύο φύλων varchar(6) ΝΑΙ Τιμή NULL
ημερομηνία_γέννησης Ραντεβού ΝΑΙ Τιμή NULL
φυσική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
ταχυδρομική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
αριθμός_επαφής varchar(75) ΝΑΙ Τιμή NULL
ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ varchar(255) ΝΑΙ Τιμή NULL

Ας υποθέσουμε ότι η απαίτηση είναι να

  1. Αλλάξτε το όνομα πεδίου από "full_names" σε "fullname"
  2. Αλλάξτε το σε τύπο δεδομένων char με πλάτος 250
  3. Προσθέστε έναν περιορισμό NOT NULL

Και οι τρεις επεξεργασίες πραγματοποιούνται με μία μόνο εντολή CHANGE.

ALTER TABLE `members` CHANGE COLUMN `full_names` `fullname` char(250) NOT NULL;

Η εκτέλεσή του στο myflixdb και στη συνέχεια η εκτέλεση του σεναρίου SHOW COLUMNS δίνει το ακόλουθο αποτέλεσμα.

Πεδίο Χαρακτηριστικά Null Κλειδί Προεπιλογή Εξτρα
αριθμός μέλους int (11) ΟΧΙ PRI Τιμή NULL αυτόματη_αύξηση
πλήρες όνομα char (250) ΟΧΙ Τιμή NULL
των δύο φύλων varchar(6) ΝΑΙ Τιμή NULL
ημερομηνία_γέννησης Ραντεβού ΝΑΙ Τιμή NULL
φυσική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
ταχυδρομική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
αριθμός_επαφής varchar(75) ΝΑΙ Τιμή NULL
ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ varchar(255) ΝΑΙ Τιμή NULL

Η στήλη ονομάζεται πλέον fullname, περιέχει την τιμή char(250) και απορρίπτει τις τιμές NULL.

ΤΡΟΠΟΠΟΙΗΣΗ Λέξης-κλειδιού

Η λέξη-κλειδί MODIFY σάς επιτρέπει να

  1. Τροποποίηση του τύπου δεδομένων στήλης
  2. Τροποποίηση των περιορισμών στηλών

Στο παραπάνω παράδειγμα CHANGE, το όνομα πεδίου έπρεπε να καταχωρηθεί δύο φορές, παρόλο που η μετονομασία ήταν μόνο μέρος του στόχου. Η παράλειψη του ονόματος πεδίου από μια πρόταση CHANGE δημιουργεί ένα σφάλμα. Όταν χρειάζονται προσαρμογή μόνο ο τύπος δεδομένων και οι περιορισμοί και το όνομα πρέπει να παραμείνει ως έχει, η εντολή MODIFY κάνει τη δουλειά με μία αναφορά της στήλης.

Το παρακάτω σενάριο αλλάζει το πλάτος του πεδίου "πλήρες όνομα" από 250 σε 50.

ALTER TABLE `members` MODIFY `fullname` char(50) NOT NULL;

Η εκτέλεσή του στο myflixdb και στη συνέχεια η εκτέλεση του σεναρίου SHOW COLUMNS δίνει το αποτέλεσμα που φαίνεται παρακάτω.

Πεδίο Χαρακτηριστικά Null Κλειδί Προεπιλογή Εξτρα
αριθμός μέλους int (11) ΟΧΙ PRI Τιμή NULL αυτόματη_αύξηση
πλήρες όνομα char (50) ΟΧΙ Τιμή NULL
των δύο φύλων varchar(6) ΝΑΙ Τιμή NULL
ημερομηνία_γέννησης Ραντεβού ΝΑΙ Τιμή NULL
φυσική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
ταχυδρομική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
αριθμός_επαφής varchar(75) ΝΑΙ Τιμή NULL
ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ varchar(255) ΝΑΙ Τιμή NULL

⚠️ Προειδοποίηση: Η στένωση μιας στήλης περικόπτει δεδομένα που δεν ταιριάζουν πλέον. Οποιοδήποτε όνομα μεγαλύτερο από 50 χαρακτήρες περικόπτεται από αυτήν την πρόταση, επομένως ελέγξτε τη μεγαλύτερη υπάρχουσα τιμή με ένα SELECT ερώτημα πριν από τη συρρίκνωση ενός πεδίου.

ΑΛΛΑΓΗ έναντι ΤΡΟΠΟΠΟΙΗΣΗΣ έναντι ΜΕΤΟΝΟΜΑΣΙΑΣ ΣΤΗΛΗΣ

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

Λέξη-κλειδί Μετονομάζει τη στήλη Αλλάζει τον τύπο και τους περιορισμούς Απαιτείται παλιό όνομα Τυπική χρήση
ΑΛΛΑΓΗ Ναι Ναι Ναι, συν το νέο όνομα Μετονομασία και επαναπροσδιορισμός σε μία πρόταση
ΤΡΟΠΟΠΟΙΩ Οχι Ναι Όνομα που δόθηκε μία φορά Διεύρυνση, περιορισμός ή επαναπληκτρολόγηση μιας στήλης
ΜΕΤΟΝΟΜΑΣΙΑ ΣΤΗΛΗΣ Ναι Οχι Ναι, συν το νέο όνομα Μόνο μετονομασία, από MySQL 8.0 και μετά

MySQL Η έκδοση 8.0 πρόσθεσε μια τέταρτη επιλογή για την απλούστερη περίπτωση, μια μετονομασία χωρίς καθόλου επαναπροσδιορισμό.

ALTER TABLE `members` RENAME COLUMN `fullname` TO `full_name`;

Ο τύπος και το όνομα έχουν διευθετηθεί. Το ερώτημα που απομένει είναι πού τοποθετείται μια νέα στήλη στον πίνακα, την οποία ελέγχει η λέξη-κλειδί AFTER.

Λέξη-κλειδί AFTER

Από προεπιλογή, μια στήλη που προστίθεται με την εντολή ALTER TABLE εμφανίζεται στο τέλος του πίνακα. Για να την τοποθετήσετε σε μια συγκεκριμένη θέση, η εντολή ALTER συνδυάζεται με τη λέξη-κλειδί AFTER.

Το παρακάτω σενάριο προσθέτει την εντολή "date_of_registration" αμέσως μετά την ημερομηνία_γέννησης στον πίνακα μελών.

ALTER TABLE `members` ADD `date_of_registration` date NULL AFTER `date_of_birth`;

Η εκτέλεσή του στο myflixdb και στη συνέχεια η εκτέλεση του σεναρίου SHOW COLUMNS δίνει το αποτέλεσμα που φαίνεται παρακάτω.

Πεδίο Χαρακτηριστικά Null Κλειδί Προεπιλογή Εξτρα
αριθμός μέλους int (11) ΟΧΙ PRI Τιμή NULL αυτόματη_αύξηση
πλήρες όνομα char (50) ΟΧΙ Τιμή NULL
των δύο φύλων varchar(6) ΝΑΙ Τιμή NULL
ημερομηνία_γέννησης Ραντεβού ΝΑΙ Τιμή NULL
ημερομηνία_εγγραφής Ραντεβού ΝΑΙ Τιμή NULL
φυσική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
ταχυδρομική_διεύθυνση varchar(255) ΝΑΙ Τιμή NULL
αριθμός_επαφής varchar(75) ΝΑΙ Τιμή NULL
ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ varchar(255) ΝΑΙ Τιμή NULL

Η επισημασμένη γραμμή είναι η στήλη που προστίθεται μετά την ημερομηνία_γέννησης. Η λέξη-κλειδί FIRST λειτουργεί με τον ίδιο τρόπο και μετακινεί τη νέα στήλη στην αρχή του πίνακα.

Συχνές Ερωτήσεις

Όχι. Οι εντολές DDL όπως οι ALTER, DROP και RENAME υποβάλλονται έμμεσα στο MySQL, επομένως μια ανοιχτή συναλλαγή δεν μπορεί να τα αναιρέσει. Η επαναφορά από ένα αντίγραφο ασφαλείας είναι η μόνη οδός επιστροφής.

Εξαρτάται από την αλλαγή. Πολλές τροποποιήσεις του InnoDB εκτελούνται online και επιτρέπουν ταυτόχρονες αναγνώσεις και εγγραφές, ενώ άλλες αντιγράφουν ολόκληρο τον πίνακα και κάνουν εγγραφές σε μπλοκ. Προσθέστε τους όρους ALGORITHM και LOCK για να δηλώσετε τι θα αποδεχτείτε.

Η συνάρτηση DROP καταργεί το ίδιο το αντικείμενο. Η συνάρτηση TRUNCATE αδειάζει έναν πίνακα αλλά διατηρεί τη δομή του. ΔΙΑΓΡΑΦΗ αφαιρεί τις επιλεγμένες γραμμές και μπορεί να φιλτραριστεί με μια ρήτρα WHERE.

Συνήθως, ναι. Βοηθοί τεχνητής νοημοσύνης ενσωματωμένοι σε πελάτες όπως MySQL Πάγκος εργασίας μετατρέψτε ένα αίτημα όπως "προσθήκη στήλης ημερομηνίας με δυνατότητα null μετά την ημερομηνία_γέννησης" σε έγκυρη σύνταξη. RevΕλέγξτε την παραγόμενη πρόταση σε σχέση με το ενεργό σχήμα πριν την εκτελέσετε.

Μόνο εν μέρει. Τα εργαλεία αξιολόγησης τεχνητής νοημοσύνης επισημαίνουν προφανείς κινδύνους, όπως μια στήλη που έχει διαγραφεί και εξακολουθεί να έχει όνομα σε ένα ερώτημα ή έναν περιορισμένο τύπο που περικόπτει δεδομένα. Δεν μπορούν να δουν κάθε καλούντα, επομένως η σταδιακή εκτέλεση παραμένει απαραίτητη.

Συνοψίστε αυτήν την ανάρτηση με: