この質問の背後にある理由へのリンクは次のとおりです: NOW() for DATETIME InnoDB Transaction Guarantee?
したがって、任意の数のクエリ (たとえば 20 以上のクエリ) を持つ単一のトランザクションが、複数のテーブルにわたって 100%正確で一貫した NOW()値を持つようにするには、NOW() を使用して DATETIME に相当する変数を割り当てる PHP の方法は何ですか (現在の TIMESTAMP ではありません)。
この質問の背後にある理由へのリンクは次のとおりです: NOW() for DATETIME InnoDB Transaction Guarantee?
したがって、任意の数のクエリ (たとえば 20 以上のクエリ) を持つ単一のトランザクションが、複数のテーブルにわたって 100%正確で一貫した NOW()値を持つようにするには、NOW() を使用して DATETIME に相当する変数を割り当てる PHP の方法は何ですか (現在の TIMESTAMP ではありません)。
1つの方法は次のとおりです。
<?php
$nowFormat = date('Y-m-d H:i:s');
$sql = "INSERT INTO table SET field='$nowFormat'";
$sql2 = "INSERT INTO table SET field='$nowFormat'";
...
PHP をまったく使用しないように、MySQL で実行します。
select @now := now();
insert into .... values (@now)
select from ... where x=@now
etc....