6

私は 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.
4

3 に答える 3

10

このように書く必要があります、変数のデータ型がありません

DECLARE @Count int;
于 2013-01-11T14:49:15.353 に答える
2

宣言している に@Countはデータ型がありません。指定する必要があります。

DECLARE @Count int
于 2013-01-11T14:49:34.043 に答える
1

変数 @Count にはデータ型がありません。これを使用してください:

Declare @Count int

関数にRETURNキーワードを追加することを忘れないでください

于 2013-01-13T17:23:31.957 に答える