Διαγραφή πίνακα σε SQL

Diagraphe Pinaka Se Sql



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

Σε αυτό το σεμινάριο, θα εξετάσουμε τη δήλωση DELETE στην SQL για να μάθουμε πώς μπορούμε να τη χρησιμοποιήσουμε για να διαγράψουμε μια υπάρχουσα σειρά από έναν πίνακα.

ΔΙΑΓΡΑΦΗ Δήλωσης

Το παρακάτω δείχνει τη σύνταξη της πρότασης DELETE στην SQL:







ΔΙΑΓΡΑΦΩ

ΑΠΟ

όνομα_πίνακα

ΟΠΟΥ

κατάσταση;

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



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



Εάν παραλείψουμε τον όρο WHERE, η πρόταση θα αφαιρέσει όλες τις σειρές από τον καθορισμένο πίνακα. Χρησιμοποιήστε με προσοχή.





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

Δείγμα πίνακα

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



Η δήλωση CREATE TABLE είναι η εξής:

ΔΗΜΙΟΥΡΓΙΑ ΤΡΑΠΕΖΙΩΝ προϊόντων (
product_id INT PRIMARY KEY AUTO_INCREMENT,
όνομα_προϊόντος VARCHAR( 255 ),
κατηγορία VARCHAR( 255 ),
τιμή ΔΕΚΑΔΙΚΟ( 10 , 2 ),
ποσότητα INT,
expiration_date DATE,
barcode BIGINT
)

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

εισάγετε
σε
προϊόντα (όνομα_προϊόντος,
κατηγορία,
τιμή,
ποσότητα,
ημερομηνία λήξης,
barcode)
αξίες ( 'Καπέλο σεφ 25 εκ.' ,
'φούρνος' ,
24,67 ,
57 ,
'09-09-2023' ,
2854509564204 )

εισάγετε
σε
προϊόντα (όνομα_προϊόντος,
κατηγορία,
τιμή,
ποσότητα,
ημερομηνία λήξης,
barcode)
αξίες ( 'Αυγά ορτυκιού - Κονσερβοποιημένα' ,
'ντουλάπι' ,
17,99 ,
67 ,
'29-09-2023' ,
1708039594250 )

εισάγετε
σε
προϊόντα (όνομα_προϊόντος,
κατηγορία,
τιμή,
ποσότητα,
ημερομηνία λήξης,
barcode)
αξίες ( 'Καφές - Αυγό Καπουτσίνο' ,
'φούρνος' ,
92,53 ,
10 ,
'22-09-2023' ,
8704051853058 )

εισάγετε
σε
προϊόντα (όνομα_προϊόντος,
κατηγορία,
τιμή,
ποσότητα,
ημερομηνία λήξης,
barcode)
αξίες ( 'Αχλάδι - Φραγκόσυκο' ,
'φούρνος' ,
65,29 ,
48 ,
'23-08-2023' ,
5174927442238 )

εισάγετε
σε
προϊόντα (όνομα_προϊόντος,
κατηγορία,
τιμή,
ποσότητα,
ημερομηνία λήξης,
barcode)
αξίες ( 'Ζυμαρικά - Μαλλιά Αγγέλου' ,
'ντουλάπι' ,
48,38 ,
59 ,
'05-08-2023' ,
8008123704782 )

Αυτό θα πρέπει να μας παρέχει έναν πίνακα ως εξής:

Παράδειγμα 1: Διαγραφή μεμονωμένης σειράς

Η πιο βασική λειτουργία διαγραφής είναι η αφαίρεση μιας μόνο σειράς από τον πίνακα. Για αυτό, μπορείτε να χρησιμοποιήσετε τη στήλη με τη μοναδική τιμή που προσδιορίζει τη σειρά-στόχο.

Για παράδειγμα, αν θέλουμε να αφαιρέσουμε τη σειρά 'Pork – Shoulder' που έχει αναγνωριστικό 9, μπορούμε να χρησιμοποιήσουμε την ρήτρα ως εξής:

ΔΙΑΓΡΑΦΩ
ΑΠΟ
προϊόντα
ΟΠΟΥ
product_id = 9 ;

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

Παράδειγμα 2: Διαγραφή πολλαπλών σειρών

Για να διαγράψουμε πολλές σειρές, μπορούμε να ορίσουμε την συνθήκη για τις σειρές προορισμού χρησιμοποιώντας τον όρο WHERE. Μπορούμε να χρησιμοποιήσουμε τους τελεστές υπό όρους όπως IN, NOT IN, LIKE κ.λπ.

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

ΔΙΑΓΡΑΦΩ
ΑΠΟ
προϊόντα
ΟΠΟΥ
κατηγορία ΣΕ ( 'παράγω' , 'φούρνος' )

Αυτό θα πρέπει να ταιριάζει με τις τιμές 'παραγωγή' και 'αρτοποιείο' στη στήλη 'κατηγορία' και να αφαιρεί τυχόν σειρές που ταιριάζουν με αυτήν τη συνθήκη.

συμπέρασμα

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