Fungsi mysql_affected_rows() PHP
Definisi dan penggunaan
Fungsi mysql_affected_rows() mengembalikan bilangan baris rekod yang di pengaruhi oleh operasi MySQL terakhir.
Tatabahasa
mysql_affected_rows(link_identifier)
Parameter | Penerangan |
---|---|
link_identifier | Diperlukan. Penanda koneksi MySQL. Jika tidak disediakan, penggunaan baku adalah yang terakhir yang digunakan. mysql_connect() Koneksi yang dibuka. Jika koneksi itu tidak ditemui, fungsi akan mencuba untuk panggil mysql_connect() Buat koneksi dan gunakan ia. Jika terjadi kecelakaan, tiada koneksi yang ditemui atau koneksi tidak dapat dibuat, sistem mengeluarkan peringatan tingkat E_WARNING. |
Pengarangan
Dapatkan kemasukan terakhir dengan link_identifier Baris rekod yang di pengaruhi oleh pindahan INSERT, UPDATE atau DELETE kueri.
Mengembalikan nilai
Jika operasi sukses, akan mengembalikan bilangan baris yang terpengaruh, jika query terakhir gagal, fungsi ini mengembalikan -1.
Jika operasi terakhir adalah query DELETE tanpa syarat (WHERE), semua rekod di dalam tabel akan dihapus, tetapi nilai yang dikembalikan oleh fungsi ini di versi 4.1.2 sebelumnya selalu 0.
Ketika menggunakan query UPDATE, MySQL tidak akan memperbarui kolom yang nilai asalnya sama dengan nilai baru. Ini membuat nilai yang dikembalikan oleh fungsi mysql_affected_rows() tidak pasti sama dengan bilangan rekod yang memenuhi syarat kriteria, hanya bilangan rekod yang sebenarnya diubah yang akan dikembalikan.
Perintah REPLACE terlebih dahulu menghapus rekod yang memiliki kunci utama yang sama, kemudian memasukkan rekod baru. Fungsi ini mengembalikan bilangan rekod yang dihapus ditambahkan dengan bilangan rekod yang dimasukkan.
Contoh
<?php $con = mysql_connect("localhost","mysql_user","mysql_pwd"); if (!$con) { die("Tidak dapat disambungkan: " . mysql_error()); } mysql_select_db("mydb"); mysql_query("DELETE FROM mytable WHERE id < 5"); $rc = mysql_affected_rows(); echo "Rekod dihapus: " . $rc; mysql_close($con); ?>
Output:
Rekod dihapus: 4