【问题标题】:T-SQL Error while DECLARING variables声明变量时出现 T-SQL 错误
【发布时间】:2012-09-14 22:27:02
【问题描述】:
Declare @ID nvarchar(14) = '12345678912345'  
DECLARE @Key int = (SELECT  key
                           FROM    table
                           WHERE   id = @ID) 

Declare @indicator varchar(1) = 'A' 

Declare @rdate Datetime = (SELECT LTRIM(RTRIM(Left(CAST(GetDate() AS Datetime2),23))))


SELECT @ID 
GO
SELECT @Key 
GO
SELECT @indicator 
GO
SELECT @date 
GO

执行上述代码时出现错误。我看到@ID 打印,它消失了,我收到以下消息。

"必须声明标量变量"@Key"

"必须声明标量变量"@indicator"

"必须声明标量变量"@date"

表中的数据类型:ID = nvarchar(14)、key = int、indicator = varchar(1) 和 date = timestamp

【问题讨论】:

    标签: visual-studio tsql


    【解决方案1】:

    Go 将结束作用域并销毁变量。

    改用;

    SELECT @ID;SELECT @Key;SELECT @indicator;SELECT @rdate;
    

    【讨论】:

    • 哇...解决了。现在,如果我有一堆 DML 语句,并且每个语句都以 GO 结尾,我可以在每个 DML 语句之后删除 GO 吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-28
    • 2020-04-16
    • 1970-01-01
    相关资源
    最近更新 更多