혼자 공부하는 SQL
# | 진도 | 기본 숙제(필수) | 추가 숙제(선택) |
1주차 (7/1 ~ 7/7) |
Chapter 01 ~ 02 | p. 80의 shop_db의 회원 테이블(member)에서 아이유 회원에 대한 정보만 추출한 후 결과 화면 인증하기 | 데이터베이스 개체 3가지 설명하기 |
2주차 (7/8 ~ 7/14) |
Chapter 03 | p. 138의 확인 문제 2번 풀고 인증하기 | 데이터 입력, 삭제하는 기본 형식 작성하기 |
3주차 (7/15 ~ 7/21) |
Chapter 04 | p. 195의 확인 문제 4번 풀고 인증하기 | p. 183 [좀 더 알아보기] 손코딩 실행하고 결과화면 인증하기 |
4주차 (7/22 ~ 7/28) |
Chapter 05 | p. 226의 market_db의 회원 테이블(member) 생성하고, p. 229 데이터 입력한 후 인증하기 | p. 271 확인 문제 4번 풀고 인증하기 |
여름방학 (7/29 ~ 8/4) |
럭키비키 즐거운 여름방학이잔앙 | ||
5주차 (8/5 ~ 8/11) |
Chapter 06 | p. 310 인덱스 생성하고 key_name이 PRIMARY로 출력된 결과 화면 캡처하기 | 인덱스 생성, 제거하는 기본 형식 작성하기 |
6주차 (8/12 ~ 8/18) |
Chapter 07 ~ 08 | p. 363 market_db의 고객 테이블(member)에 입력된 회원의 정보가 변경될 때 변경한 사용자, 시간, 변경 전의 데이터 등을 기록하는 트리거 작성하고 인증하기 | p. 402 GUI 응용 프로그램 만들고 인증하기 |
p. 226 테이블 만들고 p. 229 데이터 입력
Chapter 05. 테이블과 뷰
1. 제약조건
*기본키 primary key (중복되지 않고, null 안 됨)
*외래키 foreign key (기본키-외래키 관계로 연결된 테이블에서 데이터 삭제시 외래키 설정 테이블에서 먼저 삭제해야 함)
ㄴ unique key 조건은 중복되지 않는 유일한 값을 입력하는 것 인데, null 허용 (primary key와의 차이점)
*고유키 unique key (실수로 숫자가 잘 못 입력되는 것을 방지하는 제약조건 = data integrity 보장)
* on update cascade : 기준 테이블 데이터 삭제 시, 참조 테이블 데이터도 삭제
* check : 입력되는 데이터 점검 (반드시 기준값 이상 또는 양수 등..)
ㄴ check ~~~ is violateed : 체크 조건에 위배되 시 발생하는 오류
* default : 값을 입력하지 않으면 자동으로 입력될 값 지정
ㄴ default 160 : 값 입력하지 않으면 기본적으로 160으로 값이 지정됨
* not null : null값을 허용하지 않음 (null <> ' 공백 ' 또는 0)
2. 가상의 테이블 = 뷰view 테이블
* 뷰는 데이터를 가지고 있지 않고, select 문으로 만들어져 있음 (테이블 바로가기)
* 뷰 테이블 : v_테이블이름
create view [뷰테이블 이름]
as
select [가져올 열이름];
select [열이름] from [뷰테이블이름]
where [조건] ;
* 열 이름에 공백이 있으면 백틱(`)으로 묶어줌