При создании следующей процедуры я получаю сообщение об ошибке:Mysql хранимых процедур Выпуск
ERROR 1064 (42000): 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
'd_query;
set d_result = execute stmt;
deallocate prepare stmt; ' at line 15
Но после проверки я не могу увидеть ошибку. Строка 15 относится к «если d_query не равно нулю».
Это настоящая ошибка? Или он не рад принять выполнение как назначение d_result?
Любая помощь была бы принята с благодарностью.
delimiter |
create procedure runtests()
begin
declare d_test_id char(20);
declare d_query text;
declare d_result text;
declare cur cursor for select test_id, query, result from datavalidator order by test_id;
open cur;
repeat
fetch cur into d_test_id, d_query, d_result;
if d_query is not null then
prepare stmt from d_query;
set d_result = execute stmt;
deallocate prepare stmt;
update datavalidator set result = d_result;
end if;
until done end repeat;
close cur;
end;
|
delimiter ; |
Спасибо, Джереми, выяснил, что проблема моя. – 2009-08-24 10:51:10