最後のクエリから自動インクリメントIDを取得して同じ行を更新しようとしています。また、私はトランザクション内のすべてを保持し、何かがうまくいかない場合、ユーザーフレンドリーなエラーをスローしたいと思います。助けてもらえますか?自動インクリメントIDでレコードを挿入して更新する
$parentSQL = "INSERT INTO TABLE1(test1, test2) VALUES ('" .$test1. "', '" .$test2. "')";
$result = mysql_query($parentSQL) or die(mysql_error());
$newId = MySql_Insert_Id();
$val = "MU".$newId;
$updateSQL = "UPDATE TABLE1 SET test3 = '" .$val. "' WHERE id= ".$newId." ";
$updateResult = mysql_query($updateSQL) or die(mysql_error());
$childSQL = "INSERT INTO TABLE2(testId, testCol) VALUES (" .$newId. ", '" .$testCol. "')";
$childResult = mysql_query($childSQL) or die(mysql_error());
何を手伝ってくださいか?あなたの問題は何ですか? –
私は正しいことをしているかどうかを確認したいだけです。また、トランザクションでこれを行うより良い方法はありますか?混乱させて申し訳ありません。 – nav100
どのような種類のストレージエンジンを使用していますか?列test3はとにかく冗長です。 – ajreal