Не все процедуры создаются - MySQL
Формулировка задачи:
Добрый день народ.
Такая проблема пытаюсь создать процедуру:
Получаю:
#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 '= 1' at line 8
Через интерфейс PHP Admin тоже не выходит. Главное процедуру пустую или с одним селектом создаёт, а если ставлю бегин или просто даже IF то ругается. Версия БД 5.1.71-rel14.9.
Заранее благодарен.
Листинг программы
- CREATE
- PROCEDURE `proc_test4` ( OUT `id` INT )
- NOT DETERMINISTIC
- NO SQL
- SQL SECURITY DEFINER
- BEGIN
- IF 1 = 1
- THEN id = 1;
- END IF;
- END;
Решение задачи: «Не все процедуры создаются»
textual
Листинг программы
- delimiter $$
- CREATE
- PROCEDURE `proc_test4` ( OUT `id` INT )
- NOT DETERMINISTIC
- NO SQL
- SQL SECURITY DEFINER
- BEGIN
- IF 1 = 1
- THEN id = 1;
- END IF;
- END$$
Объяснение кода листинга программы
- Устанавливаем делемитор для обозначения начала и конца блока кода
- Создаем процедуру с именем
proc_test4
- Указываем, что процедура будет возвращать значение типа
INT
- Устанавливаем параметры
NOT DETERMINISTIC
,NO SQL
,SQL SECURITY DEFINER
- Задаем условие
IF 1 = 1
- Если условие истинно, то присваиваем переменной
id
значение 1 - Закрываем блок кода в соответствии с установленным делемитором
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д