我正在寻找一个SQL查询,该查询可以查看任何查询或存储过程并返回所有正在使用的数据库,模式,表和列。
例如,假设我有此查询:
SELECT
Product.ID, Product.Name, Sales.Price
FROM
Database1.dbo.Product
LEFT JOIN
Database2.dbo.Sales ON Product.ID = Sales.ProductID
理想情况下,我正在寻找一个查询,可以查询上述查询并返回:
Database1
列中Database2
和Databases
dbo
在Schema
列中Product
列中Sales
和Table
ID
列中Name
,Price
,ProductID
和Columns
答案 0 :(得分:0)
如果为查询创建视图或存储过程,则sys.dm_sql_referenced_entities将列出对其他数据库对象的依赖关系。
此外,您可以查看查询的执行计划,然后对输出进行后处理以接近所需的内容。 http://msdn.microsoft.com/en-us/library/ms187735(v=sql.105).aspx是SHOWPLAN_ALL T-SQL命令的起点