我有一个CLR存储过程,它从任意列获取值作为参数。要处理所有可能的列,请输入object / sql_variant类型的参数:
[SqlFunction]
public static bool IsTrue(object storedValue...
从nvarchar(max)
类型的列传入数据时,我得到:
“操作数类型冲突:nvarchar(max)是 与sql_variant“。
不兼容
如果参数是字符串,我可以将其声明为SqlChar
或用[SqlFacet(MaxSize=-1)]
进行装饰,以使其接受长度为>的列。 4000.对象是如何完成的?
答案 0 :(得分:1)
我不相信你能实现你的目标。 sql_variant的上边界是8k bytes。 nvarchar(max) capped 位于2^31-1 bytes SQL Server正在检测您是否有可能尝试将德克萨斯州填入Dixie杯。由于8k sql_variant限制,不存在会说服SQL Server让你这样做的装饰器。