0
は、次のコードブロックを考える:PDO - トランザクションから変数値を取得していますか?
$q = "
BEGIN;
DECLARE User_ID int
INSERT INTO user (field1,field2) values (value1,value2);
set User_ID = select LAST_INSERT_ID();
INSERT INTO table2 (field1,field2) values (value1,LAST_INSERT_ID());
select User_ID
COMMIT;";
$sth = PDO::prepare($q);
$sth->execute();
一体私は値「USER_ID」を盗ん行うには? fetchとfetchAllは空の配列を返すだけで、プロセスにはエラーがスローされません。
EDIT 1残念ですが、結果を返す前に2番目のINSERT文があります。
あなたのエンジンがそれをサポートしています –
申し訳ありませんが、より明確になっているはずです... user_idを返す前に2番目のINSERT句があるので、PDOのバージョンで変数値を取得するのではなく変数値を設定します。 –
OKトランザクションを使用する必要があります –