Почему не работает данная конструкция SQL ?

sssr

Новичок
Почему не работает данная конструкция SQL ?

Почему не работает данная кострукция ??
$sql.= 'select @c_id:=d02_id, @c_ord:=d02_order,@lid:=d01_id from d02_links where d02_id = '.$d02_id.'@id;';

$sql.= 'select @p_id:=d02_id,@p_ord:=d02_order From d02_links Where d01_id = @lid and d02_order < @c_ord order by d02_order desc limit 1;';

$sql.= 'update d02_links set d02_order = @p_ord where d02_id = @c_id; ';

$sql.= 'update d02_links set d02_order = @c_ord where d02_id = @p_id; ';

$result = $this->db->Execute($sql);

Выдает #1064.
Хотя запрос отрабатывается в менеджере к примеру EmsMysqlManager.
 

Profic

just Profic (PHP5 BetaTeam)
1) #1064 - это номер, а где сообщение?
2) кто тебе сказал, что mysql_query понимает несколько запросов?
 

sssr

Новичок
А жаль ... а как же тогда к примеру
отрабатывается дамп базы
построчно что-ли ???
 

Profic

just Profic (PHP5 BetaTeam)
да
phpMyAdmin делает это и не жужжит

можно еще посмотреть в сторону mysqli с его поддержкой multu_query, но наскольк опомню работает только для муськи >= 4.1
 

Кром

Новичок
>можно еще посмотреть в сторону mysqli с его поддержкой multu_query, но наскольк опомню работает только для муськи >= 4.1

Советуешь сменить базу, чтобы сделать пару селектов?
Месье знает толк в извращениях (с) :)
 

Profic

just Profic (PHP5 BetaTeam)
Кром
я? советую? данизачто! :) просто привел возможные варианты :)
 
Сверху