我有一個varchar(max)字段,其中包含XML數據。我需要通過刪除標籤之間的空格來清除它。對於如:根據SQL Server中的模式修剪空格字符串
</tns:time_changed> <tns:changed_properties>
應進行清潔
</tns:time_changed><tns:changed_properties>
我必須這樣做在一個單一的查詢,我不能使用替代所有空格,因爲有在內容其他相關的空間。
我有一個varchar(max)字段,其中包含XML數據。我需要通過刪除標籤之間的空格來清除它。對於如:根據SQL Server中的模式修剪空格字符串
</tns:time_changed> <tns:changed_properties>
應進行清潔
</tns:time_changed><tns:changed_properties>
我必須這樣做在一個單一的查詢,我不能使用替代所有空格,因爲有在內容其他相關的空間。
轉換爲XML類型,它會自動把空間的照顧。 一個空白取代了
<?xml version="1.0"?>
從外地
,它擺脫了,我是越來越「文/ xmldecl沒有輸入的開始」的錯誤。
嘗試這樣的:
UPDATE table
SET xmlColumnName = REPLACE (xmlColumnName , '> <' , '><');
XML在其中的標籤之間沒有固定數量的空格,並因不同的標籤而異。我正在尋找REPLACE(xmlColumnName,['for'(n個空格)<'], '><')的模式。 – gdanton
因爲我認爲這是一次努力,所以可以使用上面的更新查詢不同數量的空格。 –
我認爲將其轉換爲原生XML數據類型將刪除空白區域 –
這正是我最初想要做的,但空格導致錯誤「text/xmldecl not in the beginning of input」 – gdanton
對不起,發現錯誤是由於<?xml version =「1.0」?>。刪除它,它會自動照顧空間。謝謝! – gdanton