브래의 슬기로운 코딩 생활
데이터베이스 10주차 정리 본문
저저번주에 본 시험 점수는 86점이고 평균은 70점 정도이다.
저장 프로그램
프로시저
저장 프로그램 (Stored Program)
Procedure (프로시저)
삽입 작업을 하는 프로시저
프로시저로 데이터 삽입 작업을 하면 좀 더 복잡한 조건의 삽입 작업을 인자 값만 바꾸어 수행할 수도 있고,
저장해 두었다가 필요할 때마다 호출하여 사용할 수도 있음
products 테이블에 한 개의 레코드를 삽입하는 프로시저를 만들어라
새로 만든 프로시저를 이용해 (가디건, 톰브라운, 100000)을 product 테이블에 추가해라
※ 프로시저는 CALL 명령어를 이용한다.
CALL InsertProduct('가디건', '톰브라운', 100000);
SELECT * FROM products;
제어문을 사용하는 프로시저
저장 프로그램의 제어문은 어떤 조건에서 어떤 코드가 실행되어야 하는지를 제어하기 위한 문법으로,
절차적 언어의 구성요소를 포함함
데이터를 입력하기 전, 동일한 상품이 있는지 확인하고 삽입하는 프로시저를 만들어라
결과를 변환하는 프로시저
함수와 같이 계산된 결과를 반환해주는 프로시저이다.
저장 프로시저 매개변수에는 3가지 모드가 있다
초기값은 프로시저 내에서 NULL값이며 프로시저가 반환될 때 새로운 값이 호출자에게 리턴된다 (FUNCTION의 RETURNS ***와 비슷하다)
products 테이블에 저장된 상품들의 평균 가격을 반환하는 프로시저를 작성해라
사용자가 설정하는 변수 (User Defined Variable)은 @value_name으로 설정한다.
커서를 사용하는 프로시저
- 커서(cursor)는 실행 결과 테이블을 한 번에 한 행씩 처리하기 위하여 테이블의 행을 순서대로 가리키는 데 사용함
- 커서에 사용되는 키워드
트리거
트리거
트리거(trigger) : 데이터의 변경(INSERT, DELETE, UPDATE) 문이 실행될 때 자동으로 따라서 실행되는 프로시저
부수적으로 필요한 작업인 데이터 기본값 제공, 데이터 제약 준수, SQL 뷰의 수정 등을 실행
※Workbench에서 트리거 작동을 위해 다음 문장 실행
SET global log_bin_trust_function_creators = ON;
새로운 상품을 삽입한 후 자동으로 product_log 테이블에 삽입한 내용을 기록하는 트리거 생성
'2-1 > 데이터베이스' 카테고리의 다른 글
데이터베이스 12주차 정리 (0) | 2023.05.22 |
---|---|
데이터베이스 11주차 정리 (0) | 2023.05.15 |
데이터베이스 7주차 정리 (0) | 2023.04.17 |
데이터베이스 중간고사 정리 (0) | 2023.04.16 |
데이터베이스 8주차 중간고사 공지 (0) | 2023.04.13 |