2011-07-11 58 views
0

我在表中有一個XML列,它由架構定義。我試圖通過插入tbl1插入值到這個表中選擇*從tbl for xml。但是由於其中一個記錄的模式驗證失敗,這是失敗的。但是我想插入已通過驗證的記錄,並且我可以稍後捕獲其他記錄。有人可以幫助我。由於XML架構驗證錯誤導致SQL Server插入失敗

回答

1

SQL服務器驗證所有數據集,而不是單行。如果你想使用SQL Server工具來驗證行到行,方法是:

  1. SQLCLR(最快)link

  2. SSIS(易於創建) - 使用循環FOREACH您嘗試插入一行進入表格。所有失敗的行都重定向到另一個表。

  3. TSQL TRY/CATCH塊 - 從單行插入XML到模式驗證變量。最慢的一個。

+0

沒有SSIS和CLR可以做些什麼? – Santy

+0

#3只能在TSQL中完成 – Dalex

+0

您能否提供一個例子來實現上述CLR – Santy

相關問題