我创建了一个在我的数据库中工作的函数,但是我使用的(HeidiSQL)IDE生成的这个函数的CREATE代码引发了错误:
Erro SQL(1064):您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,以获得在''附近使用的正确语法。在第10行
生成的代码如下:
CREATE DEFINER=`root`@`localhost` FUNCTION `CONVERTE_VALOR`(`VALOR` VARCHAR(255))
RETURNS decimal(10,0)
LANGUAGE SQL
NOT DETERMINISTIC
NO SQL
SQL SECURITY DEFINER
COMMENT 'Converte valor VARCHAR em DECIMAL para comparação'
BEGIN
RETURN CAST(REPLACE(REPLACE(VALOR, '.', ''), ',', '.') AS UNSIGNED); /* Line 10 */
END
有什么建议吗?
答案 0 :(得分:1)
尝试:
CREATE DEFINER=`root`@`localhost` FUNCTION `CONVERTE_VALOR`(`VALOR` VARCHAR(255))
RETURNS decimal(10,0)
LANGUAGE SQL
NOT DETERMINISTIC
NO SQL
SQL SECURITY DEFINER
COMMENT 'Converte valor VARCHAR em DECIMAL para comparação'
-- BEGIN
RETURN CAST(REPLACE(REPLACE(VALOR, '.', ''), ',', '.') AS UNSIGNED); /* Line 10 */
-- END