ホームページ > バックエンド開発 > PHPチュートリアル > データが変更されたかどうかを判断するために MySQL がデータ ヘッダーを更新するかどうか

データが変更されたかどうかを判断するために MySQL がデータ ヘッダーを更新するかどうか

WBOY
リリース: 2016-06-13 12:19:06
オリジナル
1017 人が閲覧しました

データを更新する前に MySQL がデータが変更されたかどうかを判断するかどうか
MySql{MyPhpAdmin} で更新ステートメントを実行します:
update tableA set a=1 where id=2
a の元の値が 1 の場合, MySql は「影響を受ける行は 0 行」を直接返します。
a の元の値が 1 でない場合、「1 行が影響を受けました」を返します。
MySql は更新ステートメントを実行する前に新しい値を古い値と比較し、変更があった場合にのみ変更します。 ? その場合、更新ステートメントは実行されませんか?

PHP でも、
が mysql->query(); ステートメントを実行すると、ステートメント自体にエラーがなければ true が直接返されます。 update を実行すると、構文が正しく、条件が間違っている場合、クエリは直接 true を返します。
mysql->affected_rows を使用して判断すると、上記の mysql で述べた問題が発生します。ステートメントは正しく、条件も正しいのに、データは変更されず、0 行が返されます。このように、更新ステートメントが実際に正常に実行され、特定のデータに影響を与えていることをどのように確認すればよいでしょうか。
------解決策のアイデア----------------------
見ただけでもわかりにくいです。 。
ステートメントが正しいかどうか、このデータが存在するかどうか、更新後に変更されたかどうかを知る必要があります。
すべてのニーズを満たすためには、最初に選択する必要があると思います。
------解決策----------------------
この中の更新ステートメントを確認するにはどうすればよいですか実際の実行は成功しました。
-- true を返すと成功したことを意味します

は特定のデータに影響します。
mysql->affected_rows

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート