SQL study [21.08.24]
제약조건 [Constraint]
: 테이블에 잘못된 입력을 막기 위해서 일정한 규칙을 지정하는 것
- NOT NULL #NULL값 입력 금지
- UNIQUE #중복값 입력 금지 (NULL 값 중복입력은 가능)
- PRIMARY KEY : NOT NULL + UNIQUE
- FOREIGN KEY : 다른 테이블의 컬럼을 조회해서 무결성 검사
- CHECK : 조건으로 설정된 값만 입력 허용
컬럼에 제약조건 설정
CREATE TABLE Accounts (
id INT NOT NULL UNIQUE, #PRIMARY KEY 역할
Name VARCHAR NOT NULL #NOT NULL!
);
테이블에 제약 설정
CREATE TABLE study(
Id INT NOT NULL,
Name VARCHAR(30) NOT NULL,
Age INT,
PRIMARY KEY(Id, Name)
);
제약조건에 이름 붙이기
CREATE TABLE study(
Id INT CONSTRAINT study_Id_PK PRIMARY KEY,
Rank INT CONSTRANINT study_Rank_UQ UNIQUE,
Age INT CONSTRAINT study_Age_NN NOT NULL
);
- 위와 같이 제약조건에 이름을 붙인다.
ALTER 문으로 Constraint 설정
ALTER TABLE <Table name>
ADD <Field name> <Field type> UNIQUE;
ALTER TABLE <Table name>
ADD CONSTRAINT <Constraint name> UNIQUE(<Field name>);
#ADD 를 MODIFY COLUMN 으로 하면 기존 필드에 UNIQUE Constraint 설정
오늘의 한 마디 : 9월 5일에 시험을 보려고 했지만 SQL을 처음 접하는 입장에서 다른 일들도 하면서 4주간 SQLD를 준비하기에는 시간이 부족하다는 느낌이 들기 시작한다ㅠㅠ.. 그래서 우선 시험 전날까지 최대한 열심히 해본 후 다음 시험을 신청할지 9월 5일 시험을 볼지 결정을 해야겠다. 사실, 경험상 9월 5일 시험을 보는것도 좋은 거 같다.
728x90
'Data Base > Daily_study' 카테고리의 다른 글
SQL study [21.09.02] (0) | 2021.09.02 |
---|---|
SQL study [21.08.25] (0) | 2021.08.25 |
SQL study [21.08.23] (0) | 2021.08.24 |
SQL study [21.08.19] (0) | 2021.08.19 |
SQL study [21.08.18] (0) | 2021.08.19 |
댓글