2010-07-28 1 views
1

я получаю синтаксическую ошибку в строке 1 следующей процедуры:MySQL создать процедуру выпуска синтаксис строки 1

DELIMITER | 
CREATE PROCEDURE sp_autocallFillCallQueue 
BEGIN 
    DECLARE maxCalls TINYINT(1); 
    SELECT autocall_maxCalls INTO maxCalls FROM `options` LIMIT 0,1; 

    REPEAT 

     INSERT INTO `callQueue` (`phoneNumber`, 'waiting') 
     SELECT `phoneNumber` FROM `phoneNumbers` WHERE `accessRestriction` != 'blacklist' && `flagAutocall` = 1; 

     SET maxCalls = maxCalls - 1; 

     UNTIL maxCalls = 0 
    END REPEAT;   

END; 
| 

Я устанавливающее разделитель до и после этого. У меня такое чувство, что это что-то глупое (так как это мой первый mysql хранимый proc). Но я полностью в тупике.

FYI, это ошибка:

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 'PROCEDURE sp_autocallFillCallQueue 
BEGIN 
DECLARE @maxCalls TINYINT(1); 
SELECT ' at line 1 
+0

SOLVED: ошибка была пользователем. У меня есть версия 4.1, и сохраненные procs стали доступны в 5.0. – rageingnonsense

ответ

0

Для того, чтобы удалить это из «без ответа» список ...

Прогноз: Вы используете версию 4.1, но хранимые процедуры не становятся доступными до версии 5.0.

Проблема решена!

 Смежные вопросы

  • Нет связанных вопросов^_^