Mysql
 sql >> Database >  >> RDS >> Mysql

Comportamento strano con mysql_affected_rows() in PHP

Sto citando direttamente la documentazione PHP qui:

Quando si utilizza UPDATE, MySQL non aggiornerà le colonne in cui il nuovo valore è lo stesso del vecchio valore. Ciò crea la possibilità che mysql_affected_rows() non sia effettivamente uguale al numero di righe corrispondenti, ma solo al numero di righe che sono state letteralmente interessate dalla query.

Quindi nel tuo caso, mysql_affected_rows() restituirà 0 quando UNIX_TIMESTAMP() restituisce lo stesso valore (ad esempio, due richieste dallo stesso client nello stesso secondo).