dml または ddl 操作で 1 つのストアド プロシージャ内で使用されるテーブルのリストを取得できますか。例: table name -select 、insert、update、delete
2 に答える
0
;WITH stored_procedures AS (
SELECT
o.name AS proc_name, oo.name AS table_name,
ROW_NUMBER() OVER(partition by o.name,oo.name ORDER BY o.name,oo.name) AS row
FROM sysdepends d
INNER JOIN sysobjects o ON o.id=d.id
INNER JOIN sysobjects oo ON oo.id=d.depid
WHERE o.xtype = 'P')
SELECT proc_name, table_name FROM stored_procedures
WHERE row = 1
ORDER BY proc_name,table_name
于 2014-01-02T20:35:23.210 に答える