Mysql mendapatkan jumlah baris yang dihapus

Perintah Hapus MySQL digunakan untuk menghapus baris yang tidak lagi diperlukan dari tabel database. Ini menghapus seluruh baris dari tabel dan mengembalikan jumlah baris yang dihapus. Perintah hapus sangat berguna untuk menghapus data sementara atau usang dari database Anda

Kueri Hapus di MySQL dapat menghapus lebih dari satu baris dari tabel dalam satu kueri. Ini terbukti menjadi keuntungan saat menghapus sejumlah besar baris dari tabel database

Setelah baris Hapus di baris MySQL dihapus, baris tersebut tidak dapat dipulihkan. Oleh karena itu sangat disarankan untuk membuat cadangan basis data sebelum menghapus data apa pun dari basis data. Ini dapat memungkinkan Anda untuk memulihkan database dan melihat data nanti jika diperlukan

Cara Menghapus baris di MySQL

Untuk menghapus baris di MySQL, pernyataan DELETE FROM digunakan

DELETE FROM `table_name` [WHERE condition];

DI SINI

  • DELETE FROM `table_name` memberi tahu server MySQL untuk menghapus baris dari tabel
  • [WHERE condition] bersifat opsional dan digunakan untuk menempatkan filter yang membatasi jumlah baris yang dipengaruhi oleh sintaks DELETE MySQL row query

Jika klausa WHERE tidak digunakan dalam kueri MySQL DELETE, maka semua baris dalam tabel tertentu akan dihapus

Contoh Permintaan Hapus MySQL

Sebelum kita masuk ke pembahasan yang lebih mendetail tentang pernyataan SQL DELETE, mari masukkan beberapa contoh data ke dalam tabel film untuk dikerjakan

INSERT INTO  `movies` (`title`, `director`, `year_released`, `category_id`) VALUES ('The Great Dictator', 'Chalie Chaplie', 1920, 7);
INSERT INTO `movies` (`title`, `director`, `category_id`) VALUES ('sample movie', 'Anonymous', 8);
INSERT INTO  movies (`title`, `director`, `year_released`, `category_id`) VALUES ('movie 3', 'John Brown', 1920, 8);
_

Menjalankan skrip di atas menambahkan tiga (3) film ke dalam tabel film. Sebelum kita melangkah lebih jauh ke pelajaran kita, mari kita dapatkan semua film di meja kita. Skrip yang ditunjukkan di bawah melakukan itu

SELECT * FROM `movies`;

Menjalankan skrip di atas memberi kita hasil sebagai berikut










movie_id




title




director




year_released




category_id










1




Pirates of the Caribean 4




Rob Marshall




2011




1










2




Forgetting Sarah Marshal




Nicholas Stoller




2008




2










3




X-Men




NULL




2008




NULL










4




Code Name Black




Edgar Jimz




2010




NULL










5




Daddy's Little Girls




NULL




2007




8










6




Angels and Demons




NULL




2007




6










7




Davinci Code




NULL




2007




6










9




Honey mooners




John Schultz




2005




8










16




67% Guilty




NULL




2012




NULL










18




The Great Dictator




Chalie Chaplie




1920




7










19




sample movie




Anonymous




NULL




8










20




movie 3




John Brown




1920




8









Misalkan perpustakaan video Myflix tidak lagi ingin menyewakan "The Great Dictator" kepada anggotanya dan mereka ingin menghapusnya dari database. Id filmnya adalah 18, kita dapat menggunakan skrip yang ditunjukkan di bawah ini untuk menghapus baris dari tabel contoh MySQL

DELETE FROM `movies` WHERE `movie_id` = 18;
_

Menjalankan skrip di atas di MySQL WorkBench terhadap Myflix menghapus film dengan id 18 dari tabel database

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');

/* this should return the correct numbers of deleted records */
mysql_query('DELETE FROM mytable WHERE id < 10');
printf("Records deleted: %d\n", mysql_affected_rows());
_

/* with a where clause that is never true, it should return 0 */
mysql_query('DELETE FROM mytable WHERE 0');
printf("Records deleted: %d\n", mysql_affected_rows());
?>

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');
_

/* this should return the correct numbers of deleted records */
mysql_query('DELETE FROM mytable WHERE id < 10');
printf("Records deleted: %d\n", mysql_affected_rows());
_

/* with a where clause that is never true, it should return 0 */
mysql_query('DELETE FROM mytable WHERE 0');
printf("Records deleted: %d\n", mysql_affected_rows());
?>

Bagaimana cara menemukan jumlah baris yang dihapus di SQL?

Penggunaan. SQL Server @@ROWCOUNT adalah variabel sistem yang digunakan untuk mengembalikan jumlah baris yang dipengaruhi oleh pernyataan terakhir yang dieksekusi dalam batch.

Bagaimana cara menggunakan ROW_COUNT di MySQL?

ROW_COUNT() mengembalikan nilai sebagai berikut. .
pernyataan DDL. 0. Ini berlaku untuk pernyataan seperti CREATE TABLE atau DROP TABLE
Pernyataan DML selain SELECT. Jumlah baris yang terpengaruh. .
PILIH. -1 jika pernyataan mengembalikan kumpulan hasil, atau jumlah baris "terpengaruh" jika tidak. .
Pernyataan SINYAL. 0

Bagaimana cara menggunakan ROW_COUNT?

Pernyataan bahasa manipulasi data (DML) setel nilai @@ROWCOUNT ke jumlah baris yang terpengaruh oleh kueri dan kembalikan nilai itu ke klien. The DML statements may not send any rows to the client. DECLARE CURSOR and FETCH set the @@ROWCOUNT value to 1. EXECUTE statements preserve the previous @@ROWCOUNT.

Bagaimana cara mendapatkan jumlah baris yang terpengaruh dalam prosedur tersimpan MySQL?

Dalam prosedur, Anda dapat menggunakan ROW_COUNT() pada level SQL untuk mendapatkan nilai baris yang terpengaruh untuk pernyataan individual. Di MySQL5. 6, mysql_affected_rows() mengembalikan nilai yang bermakna untuk pernyataan yang lebih luas.