Funzione mysql_affected_rows() di PHP

Definizione e uso

La funzione mysql_affected_rows() restituisce il numero di righe di record influenzate dall'ultima operazione MySQL.

Sintassi

mysql_affected_rows(link_identifier)
Parametro Descrizione
link_identifier Obbligatorio. Identificatore di connessione MySQL. Se non è stato specificato, viene utilizzato come predefinito l'ultimo utilizzato mysql_connect() La connessione aperta. Se non viene trovata la connessione, la funzione tenta di chiamare mysql_connect() Eseguire la connessione e utilizzarla. In caso di imprevisto, se non viene trovata la connessione o non è possibile stabilire la connessione, il sistema emette un messaggio di avviso di livello E_WARNING.

Descrizione

Ottenere l'ultima volta con link_identifier Il numero di righe di record influenzate dalle query INSERT, UPDATE o DELETE correlate.

Restituisce il valore

Restituisce il numero di righe influenzate con successo, se l'ultima query fallisce, la funzione restituisce -1.

Se l'ultima operazione è una query DELETE senza condizioni (WHERE), tutti i record della tabella vengono cancellati, ma il valore restituito da questa funzione è 0 fino alla versione 4.1.2.

Quando si utilizza una query UPDATE, MySQL non aggiorna le colonne con lo stesso valore originale e nuovo. Questo fa sì che il valore restituito dalla funzione mysql_affected_rows() non sia necessariamente il numero di record che corrispondono alle condizioni di ricerca, ma solo il numero di record effettivamente modificati.

La frase REPLACE elimina prima i record con la chiave primaria uguale, poi inserisce un nuovo record. La funzione restituisce il numero di record cancellati più il numero di record inseriti.

Esempio

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

Output:

Records cancellati: 4