我正在尝试从xml列向sql server中的sql_variant列插入一个值
离。
INSERT INTO
[dbo].[TestColumn]
(
Id,
Attribute,
AttributeValue
)
SELECT
Id,
'TestName',
CAST(CustomColumns.query('//TestName') AS nVarchar(MAX))
FROM
[dbo].[Clmnt] (NOLOCK)
我收到了这个错误,
Operand type clash: nvarchar(max) is incompatible with sql_variant
任何人对此都有任何线索,如何在sql_variant中轻松插入值?
答案 0 :(得分:6)
sql_variant无法存储nvarchar(max)
该链接表示使用sql_variant:
无法存储以下类型的值varchar(max)
varbinary(max)
nvarchar(max)
xml
text
ntext
image
timestamp
sql_variant
geography
hierarchyid
geometry
User-defined types
答案 1 :(得分:2)
Sql_variant支持字符串。对于SQL Server 2008 R2:
nvarchar(4000) but not nvarchar(max).
varchar(8000) but not varchar(max)
我发现的文档在这些阈值上有点模糊。