我想插入一个值到sql_variant列sql服务器从xml列插入sql_variant列在sql服务器
前。
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值?
同意。那么我如何插入数据呢? – 2010-03-08 18:43:45
不要使用sql_variant列,可能是nvarchar(max)甚至是xml。虽然看起来您使用的是价值属性设计,但您在原始问题中没有解释您的模式,因此有点难以展开。 – 2010-03-08 18:48:50
你可以尝试:'CAST(CustomColumns.query('// TestName')AS nVarchar(8000))',它只在你的XML小于8000个字符时才起作用。 – 2010-03-08 18:50:49