일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 코딩테스트
- toUpperCase
- 세션
- 김영한
- 서블릿
- MVC2
- order by
- STS
- 메이븐
- 코테
- DDL
- 서브쿼리
- 자바
- Model1
- MVC
- @Controller
- Model2
- 스프링
- 기술 대비
- 인텔리제이
- @RestController
- Join
- 뉴렉처
- JSP
- 프로그래머스
- select
- 프레임워크
- 인프런
- SQL
- AOP
- Today
- Total
Heestory
13.뷰/함수/프로시저/트리거 본문
1) 뷰(view)
* 개념
- 뷰는 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된, 이름을 가지는 가상 테이블이다.
- 뷰는 저장장치 내에 물리적으로 존재하지 않지만 사용자에게 있는 것처럼 간주된다.
- 뷰는 데이터 보정작업, 처리과정 시험 등 임시적인 작업을 위한 용도로 활용된다.
- 뷰는 조인문의 사용 최소화로 사용상의 편의성을 최대화한다.
* 문법
CREATE VIEW 뷰이름[(속성이름[,속성이름])]AS SELECT문;
2) 사용자 정의함수(User-Defined Function)
* 개념
절차형 SQL을 사용하여 일련의 SQL 처리를 수행한다. 프로시저와 사용법이 동일하다. 하지만 수행 결과를 단일 값으로 반환한다는 특징이 있다.
* 문법
CREATE FUNCTION 함수명
(파라미터_명 MODE 데이터_타입)
IS
RETURN 데이터_타입
변수 선언
CREATE OR REPLACE FUNCTION 함수명
(파라미터_명 MODE 데이터_타입)
AS
RETURN 데이터_타입
변수 선언
3) 프로시저(Procedural Language)
* 개념
일련의 쿼리들을 하나의 함수처럼 실행하기 위한 쿼리의 집합이다. 자주 사용되는 SQL문을 DB 객체로 생성하여 저장한 후 필요시에 프로시저명을 호출해서 사용할 수 있다.
* 문법
CREATE OR REPLACE PROCEURE "원하는 프로시저이름" ( // 프로시저 생성
"파라미터 이름" [IN\OUT\INOUT 중에 선택] "데이터 타입", ...)
IS
변수선언
BEGIN //프로시저 시작
명령어;
[COMMIT\ROLLBACK]
END; // 프로시저 끝
4) 트리거
* 개념
트리거는 데이터베이스 시스템에서 삽입, 갱신, 삭제 등의 이벤트가 발생할 때 관련 작업이 자동으로 수행되게 하는 절차형 SQL이다. 사용자가 직접 호출하는 것이 아닌 DBMS에서 자동적으로 호출하는 것이 특징이다.
* 문법
CREATE OR REPLACE TRIGGER "원하는 트리거 이름"
[BEFORE/AFTER 선택] 삽입,삭제,갱신(INSERT, DELETE, UPDATE) ON 테이블명
[FOR EACH ROW] // 행 트리거, 명령문 트리거라면 생략가능
BEGIN
END;
'개발(~국비) > 기술면접' 카테고리의 다른 글
14.쿠키와 세션 (0) | 2022.11.01 |
---|---|
Section01. 문자 관련 문법 정리1 (0) | 2022.10.26 |
12.기본키/외래키 (0) | 2022.10.20 |
11.정규화/JOIN/서브쿼리/WHERE/HAVING (0) | 2022.10.20 |
10.데이터베이스/SQL/DDL/DML/DCL/트랜잭션 (0) | 2022.10.20 |