我必須將XML內容存儲在SQL Server 2008R2數據庫中。 XML不是一個完整的文件,但只包含簡單的元素。在SQL數據庫中存儲xml
我創建了一個類型爲[xml]的列的表格,但是當我嘗試存儲一個項目時出現錯誤。
例如,如果我嘗試存儲這個(簡體)項:
<AX_Wald gml:id="DESHPDHK0000u2xK">
<gml:identifier codeSpace="http://www.adv-online.de/">urn:adv:oid:DESHPDHK0000u2xK</gml:identifier>
<vegetationsmerkmal>1300</vegetationsmerkmal>
</AX_Wald>
我的錯誤(翻譯):
Msg 9459 - XML parsing: line 1, character 35, undeclared prefix.
我想這是命名空間失蹤,但我不希望將所有可能的命名空間添加到數據庫中的每個項目。有沒有辦法解決這個問題,而不改變XML?我需要能夠稍後訪問和比較原始XML,所以如果可能的話,我寧願保持不變。
那麼有沒有辦法告訴SQL Server要麼告訴SQL Server忽略命名空間,要麼爲整個表包含這些項目的列添加名稱空間?
即使是一個片段也需要定義名稱空間。一個片段只允許你有多個「根」元素。他們仍然需要良好的形成。 – Yuck
我只使用nvarchar(max)而不是xml(文本類型被棄用)。感謝提示! – Sam