Задавайте вопросы, мы ответим
Вы не зашли.
Здравствуйте, такая проблема. Пишу:
DELIMITER $$;
CREATE PROCEDURE 'date_strah' (date timestamp)
BEGIN
SELECT * FROM strahovka
WHERE srok<=date
END
DELIMITER ;$$
все проходит хорошо, вызываю:
CALL date_strah('11.11.2000');
А он мне парит что такой процедуры нет
В чем может быть трабл?
Неактивен
если без delimiter:
CREATE PROCEDURE 'date_strah' (date timestamp)
BEGIN
SELECT * FROM strahovka
WHERE srok<=date
END
то выходит такая бурда...
#1064 - 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 ''date_strah' (date timestamp) BEGIN SELECT * FROM strahovka WHERE srok' at line 1
Неактивен
Что-то страшное вы пишите. В каком клиенте выполняете запрос?
Попробуйте
DELIMITER $$
CREATE PROCEDURE `date_strah` (`date` timestamp)
BEGIN
SELECT * FROM strahovka WHERE srok<=`date`;
END$$
Ну и при вызове процедуры бд должна быть выбрана таже, что и при создании, или пишите полное имя процедуры `имя бд`.`имя процедуры`
Неактивен
В консоли ваша процедура создается, но как её потом вызвать? Пытаюсь CALL date_strah (`2222-11-11`);
И она не реагирует ни на что, только выход из консоли
А если CALL `date_strah` (`2222-11-11`) то ругается на неправильный аргумент даты
Отредактированно [MI_nor] (19.12.2010 13:39:33)
Неактивен
Не удивительно: в обратных кавычках задаются имена столбцов, а не строки.
А в изначальном сообщении у Вас написаны строки там, где должны быть обратные
кавычки
Неактивен