DB

SP 에서 사용 하는 테이블의 모든 목록 조회.

Lucky.H 2012. 3. 29. 10:40




WITH sp_list 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 sp_list

 WHERE row = 1

 ORDER BY proc_name, table_name


해당 DB에서 이런식으로 실행하면 모든 SP 에서 사용하는 테이블 내용을 가져올수있다.