我想插入一個值到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