반응형
- 프로시저 및 호출문 작성
매개변수를 받을 수 있고 반복해서 사용할 수 있는 이름이 있는 SQL 블록
- 프로시저 구성
DECALRE
BEGIN/END
CONTROL //순차실행, 조건분기, 반복수행 등 SQL 문장의 수행 순서를 조정하는데 사용
SQL
EXCEPTION //예외처리
TRANSACTION //DML 수행 내역의 DBMS의 적용 또는 취소 여부를 결정하는 처리부(COMMIT/ROLLBACK)
- 프로시저 작성
CREATE 명령어로 DBMS 내에 프로시저 생성이 가능
-> [OR REPLACE] 명령은 기존 프로시저 존재 시에 현재 컴파일하는 내용으로 덮어쓴다는 의미
-> PARAMETER는 외부에서 프로시저 호출 시 변수를 입력 또는 출력할 수 있다.
-> MODE는 변수의 입력 또는 출력을 구분
- IN : 운영체제에서 프로시저로 전달되는 모드
- OUT : 프로시저에서 처리된 결과가 운영체제로 전달되는 모드
- INOUT : IN과 OUT 두 가지 기능을 동시에 수행
- 사용자 정의 함수 및 호출 쿼리 작성
매개 변수를 받을 수 있고 데이터와 관련된 복잡한 계산 등을 수행하며 해당 동작의 결과를 반환(return)하는 사용자 정의 함수를 DBMS에 정의 할 수 있음
- 트리거(Trigger)
데이터베이스에 특정한 변경이 가해졌을 때(명시된 이벤트가 발생할 때)마다 DBMS가 이에 대응해서 자동적으로 호출하는 일종의 프로시저
-> 이벤트 : 조건-동작(EAC) 규칙이라고도 부름
-> 테이블 생성 시 참조 무결성과 데이터 무결성 그 밖의 다른 제약 조건으로 정의할 수 없는 복잡한 요구사항에 대한 제약 조건을 생성하는데 사용
-> 테이블의 데이터에 생기는 작업을 감시할 수 있음
- 문법
CREATE [OR REPLACE] TRIGGER trigger_name
BEFORE|AFTER trigger_event ON table_name
[FOR EACH ROW]
[WHEN condition]
BEGIN
PL/SQL Block
END;
-> for each row(행 트리거 정의문) : 컬럼 값 참조연산자 : old, new
-> update 문 변경 전 - old.column_name, 변경 후 - new.colomn_name
- T-SQL 종류
- DMS 트리거 : DML(데이터 조작어) 이벤트가 실행 될 때 자동으로 적용되는 특별한 유형의 저장 프로시저 -> INSERT, UPDATE, DELETE 문이 포함 됨
- DDL 트리거 : 다양한 DDL(데이터 정의어) 이벤트에 대한 응답으로 실행 -> CREATE, ALTER, DROP, GRANT, DENY, REVOKE 등
- LOGON 트리거 : LOGON 이벤트에 대한 응답으로 저장 프로시저를 실행 -> SQL Server 인스턴스에 사용자 세션이 설정된 경우 발생
'전공 > 정보처리기사 실기' 카테고리의 다른 글
정보처리기사 실기 - 8. 소프트웨어 개발 보안 구축(2) /입력데이터검증 (0) | 2021.05.03 |
---|---|
정보처리기사 실기 - 8. 소프트웨어 개발 보안 구축(1) /보안요구사항/보안고려사항 (0) | 2021.05.02 |
정보처리기사 실기 - 7. SQL 응용(3) /절차형SQL (0) | 2021.04.30 |
정보처리기사 실기 - 7. SQL 응용(2) /트랜잭션/집계성SQL/윈도우함수 (0) | 2021.04.30 |
정보처리기사 실기 - 7. SQL 응용(1) /DCL/DML/DDL (0) | 2021.04.27 |