データベースに次のテーブルがあります。
CREATE TABLE [dbo].[XmlData](
[id] [int] IDENTITY(1,1) NOT NULL,
[xmldata] [xml] NOT NULL,
CONSTRAINT [PK_XmlData] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
次の INSERT ステートメントと SELECT ステートメントを実行すると、CDATA セクションが行のどこかで削除されていることがわかります。
INSERT
INTO
[XmlCdataTest].[dbo].[XmlData] ([xmldata])
VALUES
('<doc><control><value><![CDATA[10 < 11]]></value></control></doc>')
GO
SELECT [xmldata] FROM XmlData
GO
これは SQL 2005 の何らかのバグですか、それとも xml データからこれらの cdata セクションを削除しないように SQL Server に指示するために使用できるオプションはありますか?