[혼공단9기] 혼공학습단 9기 4주차 - SQL 테이블과 뷰 만들기, 제약조건(feat. 혼자 공부하는 SQL, 혼공S, 혼공스)
이번 주 스터디 내용 요약
05-1. 테이블 만들기
- 테이블(table)은 표 형태로 구성된 2차원 구조. 행과 열로 구성되어 있다.
- 행은 로우(row)나 레코드(record)라고 부른다.
- 열은 컬럼(column) 또는 필드(field)라고 부른다.
- 테이블을 만들기 전에 설계를 먼저 해야 한다. 테이블 설계는 테이블 이름, 열 이름, 데이터 형식, 기본 키 등을 설정하는 것을 말한다.
GUI 환경에서 테이블 만들기
우선 MySQL Workbench를 이용하여 GUI 환경에서 두 개의테이블(member, buy)을 만들어보았습니다.
SQL로 테이블 만들기
이어서 SQL 문법으로 두 개의 테이블을 다시 만들어 보았습니다.
테이블을 만든 이후에는 데이터도 몇 개씩 입력해보았습니다.
데이터 입력 후에 테이블을 확인해보았습니다. 제대로 입력이 되었네요.
구매 테이블에도 데이터를 입력했습니다.
세 번째 입력 데이터에서는 오류가 발생(멤버 테이블에 존재하지 않는 아이디가 입력됨)하여 앞의 두 데이터만 입력되었습니다.
05-2. 제약조건으로 테이블을 견고하게
제약조건(constraint)은 데이터의 무결성을 지키기 위해 제한하는 조건.
- 기본 키 PRIMARY KEY 제약조건 : 데이터를 구분할 수 있는 식별자. 중복 불가. NULL 불가. 테이블에 1개만 가능.
- 외래 키 FOREIGN KEY 제약조건 : 두 테이블 사이의 관계를 연결. 데이터의 무결성 보장. 참조 테이블이 참조하는 기준 테이블의 열은 반드시 기본 키나 고유 키로 설정되어 있어야 함.
- 고유 키 UNIQUE 제약조건 : 중복되지 않는 유일한 값. 기본 키 제약조건과 달리 NULL 값을 허용. 테이블에 여러 개 가능.
- 체크 CHECK 제약조건 : 입력되는 데이터를 점검.
- 기본값 DEFAULT 정의 : 값을 입력하지 않았을 때 자동으로 입력될 값을 미리 지정해 놓는 방법.
- NULL 값 허용 : NULL / NOT NULL. NULL은 '아무 값도 없다'의 의미. 공백(' ')이나 0과는 다르다.
05-3. 가상의 테이블: 뷰
- 뷰는 데이터베이스 개체 중에 하나이다.
- 뷰는 테이블이라고 생각하고 사용해도 될 정도로 테이블과 거의 동일한 개체로 취급할 수 있다.
- 단순 뷰: 하나의 테이블과 연관된 뷰
- 복합 뷰: 2개 이상의 테이블과 연관된 뷰
CREATE VIEW 뷰_이름
AS
SELECT 문;
입력 예시
입력 결과
이번 주 과제는 아래와 같습니다.
# | 진도 | 기본 미션 | 선택 미션 |
4주차 (1/30 ~ 2/5) |
Chapter 05 | p. 226의 market_db의 회원 테이블(member) 생성하고, p. 229 데이터 입력한 후 인증하기 | p. 271 확인 문제 4번 풀고 인증하기 |
기본 미션
p.226의 market_db의 회원 테이블(member) 생성하고, p.229 데이터 입력한 후 인증하기
앞에서 이미 인증 완료.
했지만 한 번 더 인증...
테이블 생성
데이터 입력
테이블 확인
선택 미션
p.271 확인 문제 4번 풀고 인증하기
다음은 기존에 뷰가 있으면 덮어쓰고, 없으면 새로 생성하는 SQL입니다. 빈칸에 들어갈 내용을 고르세요.
( ) 뷰_이름
AS
SELECT 문;
① CREATE AND REPLACE VIEW
② CREATE OR REPLACE VIEW
③ CREATE AND OVERWRITE VIEW
④ CREATE OR OVERWRITE VIEW
잠깐... 오류가... 발생했었나봐요...
28명 시청...
아주 잠깐이지만... 오류인 걸 알지만...
잠시 설렜어요...
https://www.youtube.com/watch?v=6Oc8e-OZbQI
이번에도 구독과 좋아요, 알림설정은 부탁안해요...ㅎㅎ 구걸해요...
댓글