[혼공S_4주]chapter05 테이블과 뷰

study_record·2024년 7월 23일
0

혼공S

목록 보기
5/9

4주차 진도🐥

✨ 기본미션

p.225 테이블 생성하고 p.229 데이터 입력하기

✨ 추가미션

P.271 4번 문제 풀기
4. 다음의 기존 뷰가 있으면 덮어쓰고 없으면 생성하는 SQL입니다. 빈칸에 들어갈 내용은? 정답(2)번 CREATE OR REPLACE VIEW

[ ] 뷰_이름
AS
SELECT 문;

1) CREATE AND REPLACE VIEW
2) CREATE OR REPLACE VIEW
3) CREATE AND OVERWRITE VIEW
4) CREATE OR OVWRWRITE VIEW

📚공부

05_1 테이블 만들기

  • 테이블 : 행과열로 구성 / 행=로우=레코드 / 열=컬럼=필드
GUI로 테이블 만들고 데이터입력하기
  • member, buy 테이블 만들기


  • member, buy 테이블에 데이터 입력하기

SQL로 테이블 만들기
  • member 테이블 만들기
  • buy 테이블 만들기
SQL로 데이터 입력하기

05_2 제약조건으로 테이블 견고하게

  • 제약조건의 개념 : 데이터의 무결성을 지키기 위한 제한조건을 의미함

    • 데이터 무결성 : 데이터에 결함이 없음을 의미함
  • MySQL 제약조건 종류

    • PRRIMARY KEY 제약조건
    • FOREIGN KEY 제약조건
    • UNIQUE 제약조건
    • CHECK 제약조건
    • DEFAULT 제약조건
    • NULL 제약조건
  • PRRIMARY KEY 제약조건

    • 기본키 : 데이터를 구분할수있는 식별자
    • 중복없고 NULL값은 없음
    • 키본키로 생성하면 자동으로 클러스트형 인덱스가 생성됨
    • 테이블은 기본키를 1개만 있음
    • creat tabale 기본키 설정방법은 2개가 있음
    • alter table 기본키 설정방법
    • 기본키 이름 지정
    • 기본키-외래키로 지정된 테이블은 외래키로 설정된 테이블을 먼저 drop하고 기본키 테이블을 drop해야 함
  • FOREIGN KEY 제약조건

    • 두 테이블 사이의 관계를 연결해주고 데이터 무결성을 보장해주는 역할을 함
    • 기준테이블(기본키)-참조테이블(외래키)
    • 참조하는 기준테이블의 열은 반드시 기본키, 고유키로 설정해야함
    • create table 외래키 설정 방법
    • alter table 외래키 설정방법
    • 기본키-외래키 설정후 기준테이블 열이름 변경이나 테이블 삭제가 안됨
    • on update cascade : 기분테이블 열 이름 변경시 참조테이블 열이름 자동 변경해주는 옵션
    • on delete cascade : 기준테이블이 삭제되면 참조테이블 데이터가 삭제되는 기능
  • UNIQUE 제약조건

    • 중복되지 않는 유일한 값을 입력해야 하는 조건
    • NULL이 허용됨
    • 테이블에 여러개 고유키 설정이 가능함
  • CHECK 제약조건

    • 입력되는 데이터를 점검하는 기능
  • DEFAULT 제약조건

    • 값을 입력하지 않았을때 자동으로 입력될 값을 정해놓는것
  • NULL 제약조건

    • 널값 허용 : NULL
    • 널값 허용하지 않음 :NOT NULL

05_3 가상테이블:뷰

    • 데이터베이스 개채중 하나
    • 데이터를 가지고 있지 않음
    • SELECT 문으로 만들고 결과가 출력됨
  • 뷰 생성

    CREATE VIEW 뷰이름
    AS
    SELECT select문


  • 기존 뷰가 있을때 덮어쓰고 생성

    CREATE OR REPLACE VIEW 뷰이름
    AS
    SELECT select문

  • 뷰를 사용하는 이유

    • 보안을 지킬수 있음 : 중요한 개인정보를 제외시키고 작업할수 있다
    • 복잡한 SQL을 단순하게 만듦
  • 단순뷰 : 하나의 테이블로 만든 뷰

  • 복합뷰 : 두개 이상의 테이블로 만든 뷰 / 읽기 전용 / 두 테이블을 조인한 결과를 뷰로 만들때 사용

  • 뷰의 작동

    • 뷰 생성시 테이블이름 별칭 작성 가능(한글, 띄어쓰기 가능)

    • 뷰 조회시 백틱 사용(`)

    • 뷰 수정 : ALTER VIEW

    • 뷰 삭제 : DROP VIEW

      DROP VIEW v_viewtest1

    • 뷰 정보확인 : DESCRIBE
      기본키 정보는 확인 되지 않음

    • 뷰의 소스코드 확인

    • 뷰를 통한 데이터 수정

    • 지정한 범위로 뷰 생성

    • 뷰를 통한 데이터 삭제

    • 뷰를 통한 데이터 입력 : 뷰에 보이이지 않는 테이블에 NOT NULL이 없어야 함
      WITH CHECK OPTION을 사용해서 설정값에 벗어는 값을 입력되지 않게함

    • 뷰가 참조하는 테이블 삭제

      DROP TABLE IF EXISTS 테이블이름

    • 기존 뷰 덮어쓰는 기능

0개의 댓글