我是SQL中的新手并尝试在MS SQL 2008R2中创建函数,但无法在函数内声明变量。这段代码有什么问题?
CREATE FUNCTION denominator() RETURNS int
BEGIN
DECLARE @Count;
-- Some logic here
END;
GO
SELECT dbo.denominator()
DROP FUNCTION denominator
我遇到了那种错误:
Msg 102, Level 15, State 1, Procedure denominator, Line 3
Incorrect syntax near ';'.
Msg 4121, Level 16, State 1, Line 1
Cannot find either column "dbo" or the user-defined function or aggregate "dbo.denominator", or the name is ambiguous.
答案 0 :(得分:9)
你需要像这样写,缺少变量的数据类型
DECLARE @Count int;
答案 1 :(得分:1)
您声明@Count
没有数据类型,您应该提供它。
DECLARE @Count int
答案 2 :(得分:0)
变量@Count doe没有数据类型。使用:
Declare @Count int
不要忘记在函数
中添加 RETURN 关键字