二つのテーブルに差分値を挿入MySQLは...私は2つのテーブルを持って、私の環境のトランザクションが許可されている
表A - ID +名前
表B - ID +値A +バリューB + IDTABLE A
私は一度に値を挿入するためにクエリを書く方法を知っているかもしれませんか?それは単一のクエリ内で行うことができることを願って...ちょうどパフォーマンスが最大の関心事です。
二つのテーブルに差分値を挿入MySQLは...私は2つのテーブルを持って、私の環境のトランザクションが許可されている
表A - ID +名前
表B - ID +値A +バリューB + IDTABLE A
私は一度に値を挿入するためにクエリを書く方法を知っているかもしれませんか?それは単一のクエリ内で行うことができることを願って...ちょうどパフォーマンスが最大の関心事です。
mysql_query("BEGIN");
$result_1 = mysql_query("INSERT INTO table_a ('name') values ('Chris')");
if(! $result_1) {
mysql_query("ROLLBACK");
die(); // or handle the error however you choose
}
$table_1_id = mysql_insert_id();
$result_2 = mysql_query("INSERT INTO table_b ('value_a', 'value_b', 'table_a_id') values ('v1', 'v2', $table_1_id)");
if(! $result_2) {
mysql_query("ROLLBACK");
die(); // or handle the error however you choose
}
mysql_query("COMMIT");
単一のクエリで異なるテーブルに挿入することはできません。
insert into tableA (name) values ('name');
set @last = last_insert_id();
insert into tableB (valueA,valueB,idtableA) values ('valueA','valueB',@last);
これも正しいですが、トランザクションセーフなクエリではありません> _ < – 1myb
こんにちは、あなたはどのようにそうするのと同じテーブルを作成しようとしているイム...?あなたはSQLを入れてくださいできますか...ありがとう – Loshi
@Loshi、以下の質問は私のためにちょうど正しい答えです=)と私はちょうど内容を少し編集している間にコードです^^ – 1myb
nopeメイト私は別々にユーザーの詳細とユーザーpwと名前を置くためにtable1テーブル2として2つのテーブルを作成したい。なぜ私はテーブルを作成する方法を望んでいたのですか? – Loshi