728x90
반응형
[MSSQL] 프로시저(stored procedure)내 문자열 검색, 문자열 찾기
How to find specific text in stored procedure
프로시저내에서 특정 문구를 검색 할 경우 사용
RIGHT WAY)
--1)
SELECT DISTINCT a.name
FROM sysobjects AS a
LEFT JOIN syscomments AS b ON a.id = b.id
WHERE a.xtype = 'P'
AND b.text LIKE '%[TEXT]%'
--2)
SELECT OBJECT_NAME(object_id), OBJECT_DEFINITION(object_id)
FROM sys.procedures
WHERE OBJECT_DEFINITION(object_id) LIKE '%[TEXT]%'
아래와 같은 방법은 ROUTINE_DEFINITION이 nvarchar(4000)의 한계를 가지고 있어서 제대로 된 검색결과가 나오지 않음
WRONG WAY)
SELECT * FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_TYPE='PROCEDURE'
AND ROUTINE_DEFINITION LIKE '%[TEXT]%'
반응형
'DataBase > MSSQL' 카테고리의 다른 글
[MSSQL] index 확인 (0) | 2021.03.09 |
---|---|
[MSSQL] SQL 합집합, 교칩합, 차집합 구하기 (0) | 2018.10.31 |
[MSSQL] 사용자 정의 테이블 형식 지정 및 사용 (0) | 2018.07.04 |
[MSSQL] 인덱스(index) 관련 쿼리 (0) | 2018.06.05 |
[MSSQL] NUMERIC 선언 방법 (0) | 2018.05.28 |
댓글