Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: объединение команд
 
 автор: FreeGL   (04.12.2004 в 19:11)
 
 

Здравствуйте!
Я пытаюсь передать функции mysql_query сразу несколько SQL команд
(первая 'select' а вторая 'create') в качестве раздилителя
используя ; но не одна из них не выполняется :(
поотдельности они работают
ниже куски кодов которые я испробовал :)

$sql_select = mysql_query( "SELECT * FROM table ; create table dd2(lol int)");
$sql_select = mysql_query( "SELECT * FROM table ; create table dd2(lol int);");

заранее спасибо

   
 
 автор: cheops   (04.12.2004 в 19:32)   письмо автору
 
   для: FreeGL   (04.12.2004 в 19:11)
 

Так не получится... Следует использовать либо многострочные команды SQL, например INSERT
INSERT INTO tbl VALUES (NULL, "первая строка", 3),
(NULL, "вторая строка", 2),
(NULL, "третья строка", 1)

либо поместить команды в массив и выполнять их в цикле
<?php
  $query
[] = "SELECT * FROM table";
  
$query[] = "create table dd2(lol int)";
  
$query[] = "INSERT INTO tbl VALUES (NULL, "первая строка", 3)";
  foreach(
$query as $valuemysql_query($value);
?>

   
 
 автор: FreeGL   (06.12.2004 в 18:55)
 
   для: cheops   (04.12.2004 в 19:32)
 

зивените а Вы не могли бы обьяснить, почему 7
Ведь в mysql можно использовать ; для обьединения команд

   
 
 автор: cheops   (06.12.2004 в 19:18)   письмо автору
 
   для: FreeGL   (06.12.2004 в 18:55)
 

Это диктует API PHP для работы с MySQL, дело в том, что если за один раз будет передаваться более одной команды MySQL он не сможет реагировать на ошибки и не будет знать результаты какой из команд следует возвращать (если переданы два разнородных оператора SELECT).

   
 
 автор: FreeGL   (06.12.2004 в 22:37)
 
   для: cheops   (06.12.2004 в 19:18)
 

10x

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования