这是我的代码:
create function getten() returns integer
begin
return 10;
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 '' at line 3
我不知道''就是这样。有什么帮助吗?
答案 0 :(得分:2)
首先,SQL代码用大写字母书写。 其次,请记住缩进。
DELIMITER $$
CREATE FUNCTION getten()
RETURNS INTEGER
LANGUAGE SQL
BEGIN
RETURN 10;
END;
$$
DELIMITER ;
应该像这样工作。
答案 1 :(得分:1)
这对我有用......
DELIMITER $$
CREATE FUNCTION getten()
RETURNS INTEGER
BEGIN
RETURN 10;
END;
$$
DELIMITER ;
SELECT getten();
+----------+
| getten() |
+----------+
| 10 |
+----------+
答案 2 :(得分:0)
试试这个你需要在函数中定义返回类型
DELIMITER $$
CREATE
FUNCTION `getten`()
RETURNS INTEGER
BEGIN
RETURN 10;
END$$
DELIMITER ;
创建后你可以像
一样使用它SELECT `getten`()
答案 3 :(得分:0)
如果只有一个语句要执行,则无需使用begin
- end
。
create function getten() returns integer return 10;
否则,您需要使用默认语法来绑定begin
- end
块中的多个语句。
为了限制数据库引擎在semi colon
找到默认语句关闭指令时立即解释语句,我们使用自定义delimiter
。
delimiter //
create function getten() returns integer
begin
return 10;
end;
//
delimiter ;
使用块类型主体而不是使用内联单个语句是一个好习惯。
答案 4 :(得分:0)
你的所有答案都很棒,但只有在'开始'之前加上'确定性'后才有效。
非常感谢。