본문 바로가기

DBMS/SQL Server

[SQL Server] sp_depends 갱신하기

 

sp_depends 시스템 저장 프로시저를 사용하여 참조하는 개체를 확인하려고 할 때

참조하는 개체가 있음에도 참조하는 개체가 없다는 메시지가 뜨는 경우가 있다.

개체의 정의가 변경된다고 해서 이 개체를 참조하는 스토어드 프로시저, 사용자 정의 함수, 뷰의

메타데이터는 자동으로 갱신되지 않기 때문이다.

sp_refreshsqlmodule 시스템 저장 프로시저를 사용하여 갱신하면 참조하는 개체를 확인할 수 있다.

 

 -- 테스트 프로시저 생성

 CREATE PROC USP_TEST

 AS

     SELECT * FROM TEST_TBL

 GO

 

 -- 참조하는 개체 확인

 EXEC sp_depends USP_TEST

 GO

 

 

 -- 테스트 테이블 생성

 CREATE TABLE TEST_TBL (

     ID  INT

 )

 GO

 

 -- 참조하는 개체 확인

 EXEC sp_depends TEST_TBL

 GO

 

 

 -- 메타데이터 갱신

 EXEC sp_refreshsqlmodule USP_TEST

 GO

 

 -- 참조하는 개체 확인

 EXEC sp_depends TEST_TBL

 GO