본문 바로가기

DBMS/SQL Server (MS-SQL)

[SQL Server / MS-SQL] 저장 프로시저(Stored Procedure) 내용 조회

반응형

 


 

저장 프로시저(Stored Procedure) 에서만 조회하는 경우

SELECT OBJECT_NAME(object_id) AS ProcedureName,
	   OBJECT_DEFINITION(object_id) AS ProcedureDefinition
FROM sys.procedures
WHERE OBJECT_DEFINITION(object_id) LIKE '%ORDER BY [0-9]%'

 

다양한 객체 유형(저장 프로시저, 뷰, 함수 등) 에서 조회하는 경우

SELECT B.name AS ProcedureName,
	   A.definition AS ProcedureDefinition
FROM sys.sql_modules A
INNER JOIN sys.objects B ON A.object_id = B.object_id
WHERE A.definition LIKE '%ORDER BY [0-9]%'
AND B.type = 'P';	-- 저장 프로시저

 

첫번째 쿼리에서는 프로시저만 포함하므로 불필요한 필터링이 필요 없어 간단하고 직관적입니다.
두번재 쿼리에서는 프로시저만 찾을때는 불필요한 조인이 있어 성능이 조금 더 저하되나, 다양한 객체에서도 조회가 필요한 경우 유용합니다.

 

반응형