2009-10-08 4 views
-1
DELIMITER $$; 
DROP FUNCTION IF EXISTS tonumeric $$; 
CREATE FUNCTION tonumeric() returns numeric 
BEGIN 
    declare num numeric; 
    set num = to_number('12'); 
    return num; 
END$$ 
DELIMITER; $$ 

Когда я выполнил эту функцию, я столкнулся с этой ошибкой.Может ли кто-нибудь предложить мне, как решить эту проблему: Код ошибки: 1064 в MY SQL 5.5 ver

Код ошибки: 1064 У вас возникла ошибка в синтаксисе SQL; проверьте руководство, которое соответствует версии сервера MySQL для правильного синтаксиса, чтобы использовать рядом с «IF EXISTS tonumeric» в строке 1 (0 мс принято)

Код

Ошибка: 1064 У Вас есть ошибка в вашем SQL синтаксиса; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с '; CREATE FUNCTION tonumeric() возвращает числовое значение BEGIN Объявление num numeric; набор Num»в строке 1 (0 мс принято)

Благодаря

ответ

3

Как об этом:

DELIMITER $$ 
DROP FUNCTION IF EXISTS tonumeric $$ 
CREATE FUNCTION tonumeric() returns numeric 
BEGIN 
    declare num numeric; 
    set num = to_number('12'); 
    return num; 
END$$ 
DELIMITER ; 

Разделитель специальная команда, в том, что вы не должны прекращать его с; - на самом деле вы устанавливаете разделитель как «$$;», а не «$$».

+0

bah - слишком быстро для меня +1 – Ian