Jen pro jistotu:když se pokoušíte provést tyto 4 dotazy z PHP, voláte mysql_query
čtyřikrát?
Například:
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)");
Mám na mysli:nemůžete odeslat několik různých dotazů najednou, pouze jedním voláním mysql_query
(cituji, zdůrazňuji můj) :
Musíte "oddělit" své dotazy - což je pravděpodobně něco, co phpMyAdmin dělá, aniž by vám to řekl.
A jak zdůraznil @Alexandre v komentářích :
Pokud používáte mysqli_*
funkcí (a nikoli mysql_*
) pro přístup k databázi můžete zkusit použít mysqli_multi_query
.
Bohužel existuje taková funkce pro mysql_*
.
(BTW:mysql_*
API je staré – bylo by lepší, zvláště pro nový projekt, použít mysqli_*
)
Upravit po komentáři:
Pokud jde o výkon, ano, provedení jediného volání databáze namísto čtyř po sobě jdoucích PHP <-> MySQL
hovory, mohlo by to být lepší.
V tomto případě můžete zkusit použít syntaxi insert, která umožňuje vložit několik řádků najednou; viz 12.2.5. INSERT Syntaxe v příručce MySQL (cituji) :