프로젝트 중에 테이블 이름이 바뀌는 경우가 있다고 가정합시다. 그럼 기존에 작성된 프로시저나 사용자 정의함수 중에 변경될 테이블명이 사용된 것들을 찾으려는 경우 어떻게 해야 할까요? 모든 프로시저를 다 까보고 전수검사 하겠다는 다짐하시는건 아니겠죠? 다음과 같은 쿼리로 한번에 어떤 프로시저에 텍스트가 포함되어 있는지 검색을 할 수있습니다.
검색쿼리(Stored Procedure Text Search)
SELECT xtype, name, text FROM syscomments COM JOIN sysobjects OBJ ON COM.id = OBJ.id WHERE OBJ.xtype='P' AND COM.text LIKE '%텍스트%'
위에 텍스트 부분에 찾으려는 테이블명, 함수명 등을 넣으시면 됩니다.
XType Code
xtype code | 코드명 | 비고 |
P | 저장 프로시저(Stored Procedure) | |
FN | 스칼라 함수(Scalar Function) | |
TF | 테이블 함수(Table Function) | |
U | 사용자 테이블(User Table) | |
V | 뷰(View) |
프로젝트의 성공을 기원합니다.
'MS-SQL' 카테고리의 다른 글
MSSQL 일련번호는 시퀀스(Sequence)를 사용하자. (0) | 2019.05.18 |
---|---|
MSSQL 날짜 변환, CONVERT()함수의 활용 (0) | 2019.04.13 |
MSSQL 게시판 글번호 매기기 (0) | 2019.04.07 |
MSSQL 버전확인 (0) | 2019.02.15 |
MSSQL 초간단 팁들 (0) | 2019.02.02 |