|
mysql_affected_rows一番最近の操作で変更された行の数を得る 警告
この拡張モジュールは PHP 5.5.0 で非推奨になり、PHP 7.0.0 で削除されました。 MySQLi あるいは PDO_MySQL を使うべきです。詳細な情報は MySQL: API の選択 を参照ください。 この関数の代替として、これらが使えます。
説明
int mysql_affected_rows(resource
$link_identifier = NULL)
パラメータ
戻り値成功した場合に変更された行の数を、直近のクエリが失敗した場合に -1 を返します。 直近のクエリが WHERE 句を含まない DELETE だった場合、テーブルから すべてのレコードが削除されますが、MySQL 4.1.2 以前のバージョンでは この関数はゼロを返します。 UPDATE を使用する場合、MySQL では新旧の値が同じときには更新処理を行いません。 このことから、必ずしも mysql_affected_rows の返す値が マッチする行の数と一致するとは限りません。返す値は実際に更新処理が行われた 行の数です。 REPLACE ステートメントは、まず最初に同じ主キーのレコードを削除した後に 新しいレコードを挿入します。この関数は、削除された行の数と 挿入された行の数を足したものを返します。
"INSERT ... ON DUPLICATE KEY UPDATE" クエリの場合の戻り値は、
新しい行を追加した場合が 例
例1 mysql_affected_rows の例
<?php 上の例の出力は、 たとえば以下のようになります。 Records deleted: 10 Records deleted: 0
例2 トランザクションを利用した mysql_affected_rows の例
<?php 上の例の出力は、 たとえば以下のようになります。 Updated Records: 10 注意
参考
|