안녕하세요
그동안 테이블에 연관된 SP를 조회하고자 종속성 보기를 사용했었는데
몇개씩 빠지는 것들이 있어서 검색을 해보니
몇가지 방법들이 더 있더라고요.
1.
sp_depends를 이용하여 찾는 법
2.
sys.objects와 sys.syscomments를 조인하여 찾는 법
3.
sysobjects와 syscomments 를 조인하여 찾는 법
2번이나 3번을 사용하려고 보니까
2번의 sys.syscomments과 3번의 syscomments
2번의 sys.objects과 3번의 sysobjects
이렇게 테이블만 다르더라고요.
sys.syscomments랑 syscomments는 테이블구조도 똑같고 도움말도 똑같이 검색이 되는데
object 테이블들은 구조를 보니 완전 똑같지 않고 비슷하게 되어있길래 찾아 보니
sys.objects는 데이터베이스 내에 만들어진 각 사용자 정의 스키마 범위 개체에 대한 행을 포함합니다.
sysobject는 데이터베이스에서 만들어진 각 개체(제약 조건, 기본값, 로그, 규칙, 저장 프로시저)당 한 개의 행을 포함합니다.
1. 이렇게 나와 있던데 도움말을 봐도 2개의 차이를 잘 모르겠습니다.
2. 또한 특정 테이블에 연관된 SP들을 모조리 찾고 싶을때 보통 어떤 구문을 사용하시는지 알 수 있을까요??
sysobjects와 같이 스키마가 붙어 있는 것은 SQL Server 2000에 존재하던 시스템테이블입니다.
2005 부터는 스키마가 테이블 이름과 분리되었습니다,
호환성을 위해서 sysobjects 등이 제공됩니다.
https://msdn.microsoft.com/en-us/library/ms187376(v=SQL.90).aspx
저는 개인적으로 sys.syscomments 에서 확인합니다.