2011-10-07 74 views
1

我有綁定到表的XML模式。但是,有時測試人員也會搭載並綁定到此架構。當有這個「ninja」XML表引用時,對這個模式的任何改變都是痛苦的。使用tsql檢測XML依賴關係

我想在模式更改之前運行查詢,並在XML模式綁定到多個表時引發異常。我查看了sys.sql_dependencies和其他sys.xml_XXXX表中的一些,但不清楚如何在tsql中執行此操作。是這樣的可能嗎?

回答

0

像這樣的東西可能會有所幫助

select object_name(object_id) as TableName, 
     col_name(object_id, column_id) as ColumnName 
from sys.column_xml_schema_collection_usages as U 
    inner join sys.xml_schema_collections as S 
    on U.xml_collection_id = S.xml_collection_id 
where S.name = 'YourXMLSchemaCollectionName'  

這一個是尋找到的模式是在XML參數使用。

select object_name(object_id) 
from sys.parameter_xml_schema_collection_usages as P 
    inner join sys.xml_schema_collections as S 
    on P.xml_collection_id = S.xml_collection_id 
where S.name = 'YourXMLSchemaCollectionName'