我试图在存储过程中将查询值设置为NULL:
查询应为:
UPDATE [dbo].[tablesym] SET PAYMSTTS=0,SWP=0,IDRM=NULL
所以,在存储过程中,我有:
SELECT @query21= 'UPDATE [dbo].[tablesym] SET PAYMSTTS=0,SWP=0,IDRM='+NULL
但是,该列不会更新。既没有抛出任何错误,也没有在tablesym中进行任何更新。
答案 0 :(得分:2)
SELECT @query21= 'UPDATE [dbo].[tablesym] SET PAYMSTTS=0,SWP=0,IDRM='+NULL
select @query21 -- will result in NULL
就像你向无穷大添加任何东西一样简单,结果总是无穷大。
这就是你需要的
SELECT @query21= 'UPDATE [dbo].[tablesym] SET PAYMSTTS=0,SWP=0,IDRM= NULL'
如果您正在使用某些变量,则可能必须使用
SELECT @query21= 'UPDATE [dbo].[tablesym] SET PAYMSTTS=0,SWP=0,IDRM= '
+ ISNULL(@IDRM, 'NULL')
答案 1 :(得分:0)
将存储过程中的行更改为:
SELECT @query21= 'UPDATE [dbo].[tablesym] SET PAYMSTTS=0,SWP=0,IDRM=NULL'
答案 2 :(得分:0)
使用null连接字符串将在引号内返回null always.write null。