트리거 2
-
프로시저 (Stored Procedure) 개념미리 저장된 SQL 문들의 집합으로, 반복적으로 수행하는 작업을 재사용 가능하게 만들어줌. 파라미터를 받아 복잡한 작업을 수행할 수 있음. 주요 특징실행 방식EXEC 또는 sp_executesql로 호출입력/출력IN, OUT, INOUT 파라미터 가능 (OUTPUT 사용)트랜잭션트랜잭션 내에서 수행하거나, 내부에서 시작할 수 있음로직조건문, 반복문, 에러 처리 등 T-SQL의 모든 로직 사용 가능컴파일최초 실행 시 컴파일되어 캐시에 저장됨 장점복잡한 로직을 DB에 저장해서 비즈니스 로직 분산 가능재사용 가능하고, 보안성 향상 (권한 제어 가능)파라미터를 이용한 동적 쿼리 가능 단점유지보수가 어려워질 수 있음 (버전 관리 문제)함수보다 결과 반환이 자유롭지만,..
-
SELECT OBJECT_NAME(sm.object_id) AS ProcedureName, sm.definitionFROM sys.sql_modules smJOIN sys.objects o ON sm.object_id = o.object_idWHERE sm.definition LIKE '%찾을문구%' AND o.type = 'P'; -- P = 프로시저 AND o.type IN ('FN', 'IF', 'TF'); -- 'FN' 스칼라 함수, 'IF' 인라인테이블반환 함수, 'TF' 멀티문 테이블 반환함수 AND o.type = 'V'; -- V 뷰 AND o.type = 'TR'; -- TR 트리거