Fungsi mysql_affected_rows() PHP

Definisi dan penggunaan

Fungsi mysql_affected_rows() mengembalikan jumlah baris rekaman yang dipengaruhi oleh operasi MySQL sebelumnya.

Sintaksis

mysql_affected_rows(link_identifier)
Parameter Deskripsi
link_identifier Diperlukan. Identifikator koneksi MySQL. Jika tidak disebutkan, secara default menggunakan yang terakhir yang digunakan. mysql_connect() Koneksi yang dibuka. Jika koneksi tidak ditemukan, fungsi akan mencoba memanggil mysql_connect() Buat koneksi dan gunakan nya. Jika terjadi gangguan, tidak ditemukan koneksi atau koneksi gagal dibuat, sistem mengeluarkan peringatan tingkat E_WARNING.

Keterangan

Dapatkan terakhir kali dengan link_identifier Jumlah baris rekaman yang dipengaruhi oleh query INSERT, UPDATE, atau DELETE yang terkait.

Mengembalikan nilai

Jika sukses dieksekusi, akan mengembalikan jumlah baris yang terpengaruh, jika query terakhir gagal, fungsi ini mengembalikan -1.

Jika operasi terakhir adalah query DELETE tanpa kondisi (WHERE), semua catatan dalam tabel akan dihapus, tetapi nilai yang diembalikan oleh fungsi ini di versi sebelum 4.1.2 selalu 0.

Ketika menggunakan query UPDATE, MySQL tidak akan memperbarui kolom yang nilai asli dan nilai baru nya sama. Hal ini membuat fungsi mysql_affected_rows() mengembalikan nilai yang mungkin tidak sama dengan jumlah catatan yang memenuhi kondisi query, hanya jumlah catatan yang sebenarnya diubah yang akan diembalikan.

Kalimat REPLACE terlebih dahulu menghapus catatan yang memiliki kunci utama yang sama, kemudian memasukkan catatan baru. Fungsi ini mengembalikan jumlah catatan yang dihapus ditambah dengan jumlah catatan yang dimasukkan.

Contoh

<?php
$con = mysql_connect("localhost","mysql_user","mysql_pwd");
if (!$con)
  {
  die("Tidak dapat terhubung: " . mysql_error());
  }
mysql_select_db("mydb");
mysql_query("DELETE FROM mytable WHERE id < 5");
$rc = mysql_affected_rows();
echo "Catatan dihapus: " . $rc;
mysql_close($con);
?>

Output:

Catatan dihapus: 4