본문 바로가기

MS-SQL

MSSQL 프로시저 텍스트 검색

프로젝트 중에 테이블 이름이 바뀌는 경우가 있다고 가정합시다. 그럼 기존에 작성된 프로시저나 사용자 정의함수 중에 변경될 테이블명이 사용된 것들을 찾으려는 경우 어떻게 해야 할까요? 모든 프로시저를 다 까보고 전수검사 하겠다는 다짐하시는건 아니겠죠? 다음과 같은 쿼리로 한번에 어떤 프로시저에 텍스트가 포함되어 있는지 검색을 할 수있습니다. 

 

검색쿼리(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