PHPでMySql値が変更された場合にUPDATEで更新

公開日:

値が変更されたかどうかをCASE WHEN THENを使って分岐する。

CASE WHEN TestA = “%s”で値が=の場合はTHEN TestA。
つまりTestA = TestAとなりこう書くとTestAの値はTestAということで変更がされない。
=でない場合はELSE “%s”で変更された値が入る。

require(‘dbconnect.php’);
$SqlUpdate = sprintf(‘
UPDATE testtable SET
TestA =  (
CASE WHEN TestA = “%s”
THEN TestA
ELSE “%s”
END),
TestB =  (
CASE WHEN TestB = “%s”
THEN TestB
ELSE “%s”
END),
TestC =  (
CASE WHEN TestC = “%s”
THEN TestC
ELSE “%s”
END)’
,$TestA
,$TestA
,$TestB
,$TestB
,$TestC
,$TestC
);

$recordSet = mysql_query($SqlUpdate) or die(mysql_error());

作成者: ひろしっち

プロのマジシャンやってます。 こちらは昔のブログから移行した記事とマジックとは関係ない記事などです。 マジック関連は以下をご覧ください。 ひろしつちや マジシャン出張、派遣マジックショー 記事の感想、コメント、質問などはTwitterにお願いします。 フォローも良かったらお願いします。 Instagram / YouTube / Facebook