SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 30.08.2010 00:17:58

ТокиТори
Участник
Зарегистрирован: 30.08.2010
Сообщений: 2

хранимая функция

Начал учить хранимые функции/процедуры, но что-то не получается...
Пишу так:

Код:

create function my_func(id1 int unsigned)
returns varchar(20)
begin
declare name varchar(20);
select m_from into name from mailbox where id=id1;
return name;
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 'varchar(20)' at line 4
И не могу понять в чем проблема... Помогите разобраться с этой проблемой? А лучше еще ссылок накидать на полезные ресурсы по темеsmile Спасибо!

Неактивен

 

#2 30.08.2010 00:32:18

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: хранимая функция

Вы скорее всего не используете делимитер. Нужно так:

delimiter $$
create function my_func(id1 int unsigned)
returns varchar(20)
begin
declare name varchar(20);
select m_from into name from mailbox where id=id1;
return name;
end$$
 

В каком клиенте выполняете запрос?

Лучший ресурс - http://dev.mysql.com/doc/refman/5.1/en/ … edure.html

Неактивен

 

#3 30.08.2010 01:08:36

ТокиТори
Участник
Зарегистрирован: 30.08.2010
Сообщений: 2

Re: хранимая функция

В phpmyadmin не заработало, а вот в NetBeans'е подключился к базе и без проблем создал функцию. Где-то мелькало имя "MySQL Administrator", он лучше подойдет для новичка в sql?

Неактивен

 

#4 30.08.2010 01:13:57

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: хранимая функция

phpadmin лучше не использовать. "MySQL Administrator" это часть MySQL GUI Tools.

Подробнее как скачать и установить MySQL GUI Tools и что это такое - см http://sqlinfo.ru/articles/info/6.html

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson