반응형
가끔 저장 프로시저 이름이 안떠오르거나 다수의 SP의 내용을 일괄적으로 바꾸거나 할 필요가 있을 경우가 있습니다. 저장 프로시저를 일일이 열어봐서 찾으려고 하니 숨이 턱막힙니다.
그럴 때 유용한 저장프로시저 내용 검색쿼리를 소개합니다.
잘못된 방식
SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_DEFINITION LIKE '%찾을 내용%' AND ROUTINE_TYPE='PROCEDURE'
…포스트 작성하기 전까지는 위 쿼리를 사용했었습니다만 찾다보니 문제를 발견하였습니다.
ROUTINE_DEFINITION이 nvarchar(4000)으로 문자열을 변환하여 내려주기 때문에 매우 긴 내용의 경우 검색에 문제가 있다고 합니다.
다음 스크립트는 올바른 결과를 제공합니다.
SELECT OBJECT_NAME(object_id), OBJECT_DEFINITION(object_id) FROM sys.procedures WHERE OBJECT_DEFINITION(object_id) LIKE '%찾을 내용%'
참고
출처: https://blog.sonim1.com/111 [Kendrick's Blog]
출처: https://blog.sonim1.com/111 [Kendrick's Blog]
반응형
'DB > MSSQL' 카테고리의 다른 글
mysql 설치파일 주소 (리눅스 등 ) (0) | 2020.05.14 |
---|---|
mysql 설치 경로 확인 (0) | 2020.05.14 |
MSSQL 다중 join update (0) | 2019.09.04 |
[mssql] 조건절 like 검색 조건 ( escape 특수문자 와일드 카드 검색) (0) | 2019.04.09 |
MSSQL ROW_NUMBER() OVER() 줄 때, 특정 값 상단으로 올리기 (0) | 2019.01.11 |
댓글