当我尝试用单行打印一行时int,nvarchar我收到一个错误.这是我的全部代码.
DECLARE @COUNT INT, @CONST INT
SET @COUNT = 0
SET @CONST = 12
WHILE(@COUNT<12)
BEGIN
SET @COUNT = @COUNT + 1
PRINT @COUNT + N' times ' + @CONST + N' is ' + @COUNT*@CONST
END
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
消息245,级别16,状态1,行8转换将nvarchar值'times'转换为数据类型int时失败.
我可以自己打印'int' nvarchar,但是当我将它们组合起来时,我会收到这个错误.我是不正确地将它们组合在一起的?
我正在使用Microsoft SQL Management Studio
D.N*_*.N. 13
你CAST的变量首先应该是nvarchar:
DECLARE @COUNT INT, @CONST INT
SET @COUNT = 0
SET @CONST = 12
WHILE(@COUNT<12)
BEGIN
SET @COUNT = @COUNT + 1
PRINT CAST(@COUNT as nvarchar) + N' times ' + CAST(@CONST as nvarchar) + N' is ' + CAST(@COUNT*@CONST as nvarchar)
END
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12887 次 |
| 最近记录: |