본문 바로가기

SQL & DB

DB) SQL 기초 (COMBINATION KEY, NOT NULL, 제약조건 확인/삭제)

목차
CombinationKey
NOT NULL
    1) 테이블 생성시 추가
    2) 테이블 생성후 추가
제약조건 확인
제약조건 삭제

 

🧩Combination Key (복합키)

  • 하나의 컬럼으로 하나의 기본키를 구성하는 것이 가장 좋으나, 어쩔 수 없는 경우 기수의 컬럼을 조합해서 기본키를 생성
  • 최대 16개까지 가능하다.
  • 외래키를 이용해 복합키를 만드는 경우가 있는데, 이 경우 UPDATE 에 제한을 주므로 사용하지 않는 것이 좋다.
-- pk_two_test 테이블의 first_col과 second_col를 복합키로 만들자
CREATE TABLE pk_two_test(
	first_col INT(5),
	second_col VARCHAR(10),
	third_col DATE,
	PRIMARY KEY(first_col,second_col)
);

 

결과

 

🧩NOT NULL

  • NULL 을 허용하지 않는다.
  • NOT NULL은 제약조건이지만 속성으로 취급

1) 테이블 생성할 때 NOT NULL 추가

CREATE TABLE [테이블명](
	[컬럼명](사이즈) NOT NULL
);

 

사용해보기

CREATE TABLE pk_test(
	first_col INT(3) PRIMARY KEY,
	second_col VARCHAR(4) NOT NULL
);

 

결과

 

 

2) 테이블 생성 후 NOT NULL 추가

ALTER TABLE [테이블명] MODIFY [컬럼명](사이즈);

 

사용해보기

  • pk_test테이블의 second_col 컬럼 not null 만들기
ALTER TABLE pk_test MODIFY second_col VARCHAR(4) NOT NULL;

 

결과

 

 

🧩제약조건 확인 

SELECT * FROM information_schema.TABLE_CONSTRAINTS where TABLE_NAME = [테이블명];​

 

사용해보기

SELECT * FROM information_schema.TABLE_CONSTRAINTS where TABLE_NAME = 'pk_two_test';

 

결과

 

 

🧩제약조건 삭제

ALTER  TABLE [테이블] DROP [제약조건 종류]

 

사용해보기

ALTER TABLE pk_two_test DROP PRIMARY KEY;

 

결과 : pk_two_test테이블의 제약조건 사라져서 제약조건 확인시 뜨지 않는다.