$s = "INSERT INTO `inst` (id) VALUES (1);"
. "INSERT INTO `inst` (id) VALUES (2);"
. "INSERT INTO `inst` (id) VALUES (3);"
. "INSERT INTO `inst` (id) VALUES (4);";
mysql_query($s);
Вот есть у нас запрос который в свою очередь должен добавить за один раз группу данных без цыкла.
Но при попытке произвести это, нам выдается месага что
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO `inst` (id) VALUES (2); INSERT INTO `inst` (id) VALUES (3); INSERT I' at line 2
С ошибкой 1064
Кто подскажет как решить траблу?
В пхпАдмине все фурычит отлично.
Спустя 4 минуты, 56 секунд (29.03.2011 - 15:33) Snus написал(а):
Zerstoren
$s = "INSERT INTO `inst` (`id`) VALUES
('1'),
('2'),
('3'),
('4')";
mysql_query($s) or die(mysql_error());
Спустя 17 минут, 6 секунд (29.03.2011 - 15:50) Trianon написал(а):
Zerstoren
phpMyAdmin разбивает код на отдельные запросы, и каждый из них выполняет отдельным вызовом mysql_query()
phpMyAdmin разбивает код на отдельные запросы, и каждый из них выполняет отдельным вызовом mysql_query()
Спустя 22 минуты, 27 секунд (29.03.2011 - 16:13) Zerstoren написал(а):
Цитата (Snus @ 29.03.2011 - 12:33) |
Zerstoren$s = "INSERT INTO `inst` (`id`) VALUES |
Ага!
Вот где спрятались мои не знания. Снус спасибо)
Спустя 6 часов, 45 минут, 58 секунд (29.03.2011 - 22:59) kirik написал(а):
Цитата (Zerstoren @ 29.03.2011 - 08:13) |
Вот где спрятались мои не знания. |
Твои незнания спрятались в ответе Trianon'а
А именно: mysql_query не может выполнять запросы, перечисленные через точку с запятой. Однако это является стандартом SQL, и тот же pg_query или mysqli уже поддерживают такую возможность.