0
我有,我想知道哪些表和列在查詢中提到的SQL查詢。例如,從這個逆向工程列表在SQL查詢中提到
USE AdventureWorks
GO
SELECT t.name AS table_name,
SCHEMA_NAME(schema_id) AS schema_name,
c.name AS column_name
FROM sys.tables AS t
INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID
WHERE c.name LIKE '%EmployeeID%'
ORDER BY schema_name, table_name;
我想知道,從SYS.TABLES,列名,OBJECT_ID被稱爲等等; sys.columns有OBJECT_ID和名稱提到。
,我從查詢得到真正的查詢/視圖定義遠不止此,但這就是一個例子。
反正我能做到這一點? 非常感謝。
感謝@iamdave你的答案。這些解決方案是否會考慮到SQL腳本的變體。例如即使是生成的腳本(已使用設計師設計的)有幾個變化,有時[TAB1] .col1,tab1.col1,「tabl1」 .col1,其他時間只列名,因爲列名不曖昧加盟,例如從A a連接B b中選擇col1,B.col2而不是總是全參考a.col1,b.col2。 – Kenny
@Kenny如果它是正確的SQL語法的一部分,那麼它應該。最容易找到的方法是嘗試演示並親自查看,但如果您不確定,可以使用SQL Formatter(如ApexSQL(免費SSMS插件))在將腳本放入上述工具之前重新格式化腳本。 – iamdave