念のために言っておきますが、PHPからこれらの4つのクエリを実行しようとすると、 mysql_query
を呼び出します。 4回?
例:
mysql_query("INSERT INTO um_group_rights (`um_group_id`,`cms_usecase_id`,`um_right_id`) VALUES (2,1,1)");
mysql_query("INSERT INTO um_group_rights (`um_group_id`,`cms_usecase_id`,`um_right_id`) VALUES (2,2,1)");
mysql_query("INSERT INTO um_group_rights (`um_group_id`,`cms_usecase_id`,`um_right_id`) VALUES (2,3,1)");
mysql_query("INSERT INTO um_group_rights (`um_group_id`,`cms_usecase_id`,`um_right_id`) VALUES (2,4,1)");
つまり、 mysql_queryを1回呼び出すだけで、一度に複数の個別のクエリを送信することはできません。
(引用、強調鉱山) :
クエリを「分離」する必要があります。これは、おそらくphpMyAdminが通知せずに行うことです。
そして、@Alexandreが指摘したように コメントで:
mysqli _ *
を使用している場合
関数( mysql _ *
ではありません )データベースにアクセスするには、 mysqli_multi_query
>
。
残念ながら、 mysql _ *
にはそのような関数があります 。
(ところで: mysql _ *
APIは古いものです。特に新しいプロジェクトでは、 mysqli _ *
を使用する方が適切です。 )
コメントの後に編集:
パフォーマンスに関する場合は、はい、4つの連続した PHP <-> MySQL
の代わりに、データベースへの1回の呼び出しを実行します 呼び出し、より良いかもしれません。
この場合、一度に複数の行を挿入できる挿入構文を使用してみることができます。 12.2.5を参照してください。 INSERT構文 MySQLのマニュアル(引用) :