다시 이음

SQL (3) - 테이블과 뷰 본문

카테고리 없음

SQL (3) - 테이블과 뷰

Taeho(Damon) 2022. 5. 4. 15:01

 

MySQL 고급

 

테이블과 뷰

 

1. 테이블

 

- 기본키 제약 조건

CREATE TABLE usertbl
	userID CHAR(8) NOT NULL,
    name VARCHAR NOT NULL,
    birthday INT NOT NULL;

#기본키 제약조건 추가
ALTER TABLE usertbl
	ADD CONSTRAINT PK_usertbl_userID
    	PRIMARY KEY (userID)

- 외래키 제약 조건

CREATE TABLE usertbl
	userID CHAR(8) NOT NULL PRIMARY KEY,
    name VARCHAR NOT NULL,
    birthday INT NOT NULL;

#외래키 설정
CREATE TABLE buytbl
	num INT AUTO_INCREMENT NOT NULL PRIMARY KEY,
	userID CHAR(8) NOT NULL,
    name VARCHAR NOT NULL,
    birthday INT NOT NULL,
    FOREIGN KEY(userID) REFERENCES usertbl(userID)
    ON UPDATE CASCADE;  # 기준테이블 정보 변경시 외래 키 테이블도 같이 변경

- CHECK 제약 조건 : 테이블을 정의하면서 CHECK 뒤에 입력 제한 조건을 정의

- DEFAULT 제약 조건 : 기본값 정의

- 임시 테이블 : TEMPORARY TABLE // DROP TABLE로 삭제 하거나 프로그램 재실행하면 삭제

- 테이블 수정 : ALTER TABLE(추가,삭제,변경)

ALTER TABLE usertbl
	ADD 추가할 열이름 VARCHAR(30)
   		DEFAULT 10
        NULL;
    DROP COLUMN 삭제할 열이름
    CHANGE COLUMN 수정 전 열이름 수정 후 이름 VARCHAR NULL;
    #열 제약 조건 삭제
    DROP PRIMARY KEY;
	DROP FOREIGN KEY;

 

2. 뷰

 

장점

- 보안

- 복잡한 쿼리를 단순화

 

3. 테이블스페이스

 

테이블이 저장되는 물리적 공간