8

製品のテーブルサイズを見積もるために、SQLServer2008がxml列を格納する方法を理解しようとしています。

私はDATALENGTH(xml_column)いくつかのテストを実行するために使用していますが、結果は気がかりです:

Xml document length | Datalength | Bytes per character
175                 | 366        | 2.09
15                  | 38         | 2.53
314                 | 414        | 1.31

明らかに、nvarchar(max)私がどこかで読んだように、xml列型は偽装ではありません。

おそらく圧縮されてバイナリとして保存されていますが、どこにもその方法を見つけることができません。

誰かがSQLServer2008にxml列がどのように格納されているか説明できますか?

4

2 に答える 2

7

XML列は「コンパクトなバイナリ形式」で保存されます。

マイクロソフトがそれ以上の詳細を提供するとは思えません。

于 2012-11-30T18:13:07.140 に答える
5

reneが指摘しているように、SQL Server 2008はMS-BINXML(コンパクトなバイナリ形式)を使用してxml列のコンテンツを格納します。

于 2012-12-03T08:01:47.407 に答える