Hai*_*ley 2 t-sql sql-server parameters function
我正在尝试创建一个函数,当用户输入开始日期和结束日期作为参数时,该函数将打印游戏信息.如果游戏日期在开始日期和结束日期之间,它将显示游戏信息.我决定使用表值函数.
到目前为止,我有:
CREATE FUNCTION fn_gamedate
(@InputStartDate DATETIME,
@InputEndDate DATETIME)
RETURNS TABLE
AS
RETURN
(SELECT *
FROM Game
WHERE Game.[Date] Between @StartDate AND @EndDate)
Run Code Online (Sandbox Code Playgroud)
我尝试运行它时得到的错误是
必须声明标量变量"@StartDate".
我很困惑,我会宣布@startdate,并@enddate为地方和在声明中宣布的.谢谢!
该参数被调用@InputStartDate,但在代码中,您使用@StartDate- 下定决心!
试试这个:
CREATE FUNCTION fn_gamedate
(@InputStartDate DATETIME, <--------+
@InputEndDate DATETIME) | these two need to MATCH!
RETURNS TABLE |
AS |
RETURN |
(SELECT * |
FROM Game |
WHERE Game.[Date] Between @InputStartDate AND @InputEndDate)
Run Code Online (Sandbox Code Playgroud)
如果为参数 命名@InputStartDate,则必须在T-SQL语句中使用相同的名称!
| 归档时间: |
|
| 查看次数: |
62 次 |
| 最近记录: |