SQL Server 2005+ 引入 xml 資料類型。當資料表欄位儲存的 XML 內容超過 2 MB,在 SSMS 中點擊該儲存格查看時會報錯:
無法顯示 XML 資料。結果集中的 XML 資料已被截斷,因為它超過了在 [工具] → [選項] → [查詢結果] → [SQL Server] → [XML 資料] 中設定的最大字元限制。
SSMS 預設限制 XML 資料顯示大小為 2 MB(2,097,152 字元),超過部分自動截斷導致 XML 格式不完整,無法剖析顯示。
2097152 改為 0(代表無限制)或較大數值(如 10485760 = 10 MB)
FILESTREAM 或 FileTable (SQL 2012+) 儲存.query()、.value()、.exist() 方法擷取片段,避免傳輸完整文件-- 僅取得特定節點,避免傳輸完整大型 XML
SELECT
XmlColumn.value('(/Catalog/Book[1]/Title)[1]', 'NVARCHAR(200)') AS FirstTitle,
XmlColumn.query('/Catalog/Book[@category="ITPro"]') AS ITProBooks
FROM dbo.XmlTable
WHERE XmlColumn.exist('/Catalog/Book[@category="ITPro"]') = 1;