【发布时间】:2013-05-27 12:23:19
【问题描述】:
有存储过程,我想更新数据并希望将一些 varbinary 转换为 nvarchar
UPDATE [payterm].[dict_default_values]
SET [default_value] = CAST(@value AS NVARCHAR(MAX))
,[descr] = CAST(@descr AS NVARCHAR(MAX))
,[grp] = @grp
WHERE [code] = @code;
IF @@ROWCOUNT = 0
INSERT INTO [payterm].[dict_default_values]
([code], [default_value], [descr], [grp])
VALUES
(@code, @value, @descr, @grp);
当我输入参数时出现错误:不允许从数据类型 varchar 到 varbinary 的隐式转换。使用 CONVERT 函数运行此查询
【问题讨论】:
-
如果@value 和@descr 是输入参数,为什么不简单地将它们设为varchar,这样你就不必转换任何东西了?
标签: sql stored-procedures