Rumah > Artikel > pangkalan data > Padam pernyataan mysql
Dalam MySQL, delete statement ialah arahan yang digunakan untuk memadam rekod daripada pangkalan data. Ia boleh membantu kami membersihkan rekod yang tidak berguna dalam pangkalan data untuk mengurus data dengan lebih berkesan. Kenyataan pemadaman MySQL sangat fleksibel dan boleh menggunakan pelbagai sintaks dan pilihan yang berbeza untuk menyelesaikan operasi pemadaman yang berbeza. Dalam artikel ini, kami akan melihat dengan lebih dekat pilihan ini dan cara menggunakan kenyataan padam dengan betul.
Sintaks asas
Sintaks asas pernyataan pemadaman MySQL adalah seperti berikut:
DELETE FROM table_name WHERE condition;
di mana:
table_name
menentukan data untuk dipadamkan nama jadual. condition
ialah parameter pilihan yang digunakan untuk menentukan rekod yang akan dipadamkan. Jika parameter ini ditinggalkan, semua rekod dalam jadual akan dipadamkan. Contoh:
Andaikan kita mempunyai jadual bernama "pelajar" yang mengandungi data berikut:
id | name | age | gender |
---|---|---|---|
1 | Alice | 20 | Female |
2 | Bob | 22 | Male |
3 | Cindy | 18 | Female |
4 | David | 21 | Male |
Untuk memadam semua data dalam jadual ini yang umurnya lebih muda daripada Untuk rekod pelajar berumur 20 tahun, anda boleh menggunakan arahan berikut:
DELETE FROM students WHERE age < 20;
Selepas melakukan operasi pemadaman, kandungan jadual akan menjadi:
id | name | age | gender |
---|---|---|---|
1 | Alice | 20 | Female |
2 | Bob | 22 | Male |
4 | David | 21 | Male |
Gunakan pernyataan TRUNCATE untuk memadamkan semua data dalam jadual dengan cepat
Dalam sesetengah kes, kami mungkin perlu mengosongkan semua data dalam jadual dengan cepat dan bukannya memadamkan sebahagian daripadanya. Untuk tujuan ini, MySQL menyediakan pernyataan yang dipanggil TRUNCATE yang boleh memadam sepenuhnya semua data dalam jadual dalam satu operasi. TRUNCATE adalah lebih pantas daripada kenyataan DELETE kerana ia boleh memadam data dalam jadual secara langsung tanpa mengelog dan oleh itu tanpa memerlukan rollback. Sintaks bagi pernyataan
TRUNCATE adalah seperti berikut:
TRUNCATE table_name;
Contoh:
Untuk mengosongkan semua data dalam jadual "pelajar" yang dinyatakan sebelum ini, anda boleh menggunakan arahan berikut:
TRUNCATE students;
Selepas pelaksanaan, jadual tidak akan mengandungi sebarang data lagi.
Gunakan pernyataan LIMIT untuk mengawal bilangan baris yang dipadamkan
Apabila memadamkan data, kadangkala kita hanya mahu memadamkan bilangan baris tertentu dalam jadual dan bukannya memadamkan kesemuanya. Pada masa ini, anda boleh menggunakan pernyataan LIMIT untuk menentukan bilangan baris yang akan dipadamkan. Pernyataan LIMIT adalah serupa dengan pernyataan SELECT dan boleh ditambah pada pernyataan DELETE untuk mengawal bilangan baris yang dipadamkan. Sintaks pernyataan
LIMIT adalah seperti berikut:
DELETE FROM table_name WHERE condition LIMIT number;
di mana:
table_name
dan condition
adalah sama seperti yang diperkenalkan sebelum ini. number
Menentukan bilangan baris untuk dipadamkan. Contoh:
Andaikan kita mempunyai jadual bernama "pesanan" yang mengandungi data berikut:
id | order_date | customer | amount |
---|---|---|---|
1 | 2020-01-01 | Alice | 100 |
2 | 2020-01-02 | Bob | 200 |
3 | 2020-01-03 | Cindy | 150 |
4 | 2020-01-04 | David | 300 |
5 | 2020-01-05 | Elizabeth | 250 |
Anda mahu memadamkan jadual "pesanan" Untuk tiga pesanan dengan jumlah tertinggi, anda boleh menggunakan arahan berikut:
DELETE FROM orders ORDER BY amount DESC LIMIT 3;
Selepas pelaksanaan, jadual akan menjadi:
id | order_date | customer | amount |
---|---|---|---|
1 | 2020-01-01 | Alice | 100 |
3 | 2020-01-03 | Cindy | 150 |
Gunakan pilihan CASCADE untuk memadam rekod sub-jadual
Dalam MySQL, kunci asing sering digunakan untuk mewujudkan sambungan antara pangkalan data hubungan. Kunci asing membolehkan kami melaksanakan pertanyaan bersama dan pemadaman antara jadual dengan mewujudkan sambungan antara jadual. Jika kami ingin memadamkan rekod tertentu dalam satu jadual dan juga perlu memadam rekod berkaitan dalam jadual lain yang dikaitkan dengannya, kami boleh menggunakan pilihan CASCADE.
Pilihan CASCADE ialah operasi memadam lata yang biasa digunakan dalam MySQL. Ia secara automatik mencari jadual lain yang berkaitan dengan rekod dalam jadual yang ditentukan dan memadam semua rekod berkaitan dalam jadual ini. Pilihan CASCADE hanya boleh digunakan dalam kombinasi dengan kekunci asing untuk menentukan tindakan yang perlu diambil semasa melakukan operasi pemadaman.
Untuk struktur jadual berikut:
CREATE TABLE customers ( id INT PRIMARY KEY, name VARCHAR(50) ); CREATE TABLE orders ( id INT PRIMARY KEY, customer_id INT, order_date DATE, amount DECIMAL(10, 2), FOREIGN KEY (customer_id) REFERENCES customers(id) ON DELETE CASCADE );
Untuk memadam rekod dengan ID 3 dalam jadual "pelanggan" dan semua rekod berkaitannya dalam jadual "pesanan", anda boleh menggunakan arahan berikut :
DELETE FROM customers WHERE id = 3;
Operasi pemadaman akan memadamkan rekod pelanggan dengan ID 3 dan secara automatik memadamkan semua rekod pesanan yang berkaitan.
Ringkasan
Seperti yang dinyatakan di atas, rekod dalam pangkalan data boleh dipadamkan dengan mudah menggunakan pernyataan padam MySQL. Sintaks asas kenyataan padam termasuk DELETE, TRUNCATE dan LIMIT kenyataan. Dengan menggunakan pilihan ini secara fleksibel, operasi data boleh dikendalikan dengan cepat dan selamat. Nota: Apabila menggunakan kenyataan padam, semak syarat dan pilihan dengan teliti untuk mengelakkan pemadaman atau kehilangan data penting secara tidak sengaja.
Atas ialah kandungan terperinci Padam pernyataan mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!