데이터베이스 공통 테이블 생성 구문 형식
-- 테이블 생성 CREATE TABLE 테이블명( 칼럼명 DATATYPE [DEFAULT 형식], 칼럼명 DATATYPE [DEFAULT 형식], 칼럼명 DATATYPE [DEFAULT 형식] [AS 별칭명]
[CONSTRAINT 칼럼명 PRIMARY KEY (칼럼명)], [CONSTRAINS 칼럼명 FOREIGN KEY (칼럼명) REFERENCES 참조할 테이블명(참조할 테이블 칼럼명)] ); |
> 한 테이블 내에서는 칼럼명이 중복되면 안 됨
> 예약어는 사용할 수 없음
> [ ] 는 옵션으로 생략해도 됨
1. 테이블 생성
예시)
-- 테이블 생성 예시 CREATE TABLE TEST_TABLE_02( TEST_ID VARCHAR(20) NOT NULL, TEST_NAME CHAR(20) NOT NULL, TEST_DEPT VARCHAR(10), TEST_DATE DATE, TEST_NUM NUMBER(3),
CONSTRAINT TEST_PK PRIMARY KEY (TEST_ID) );
COMMIT; |
- 결과
테이블 생성 시 제약조건으로 기본 키 TEST_PK가 설정되었음을 확인
2. 제약조건 (CONSTRAINT)
테이블 생성 혹은 수정 시 제약조건을 반드시 사용할 필요는 없음
구분 | 설명 |
PRIMARY KEY |
기본키 - 테이블에 저장된 행 데이터를 고유하게 식별 - 하나의 테이블에는 하나의 기본키 제약만 정의 가능 - 기본키 제약조건을 생성하면 DBMS에서 자동으로 UNIQUE 인덱스를 생성 - 기본키 칼럼에는 NULL을 입력할 수 없음 |
FOREIGN KEY |
외래키 - 참조 무결성 제약조건 선택 - 관계형 데이트베이스에서 테이블 간의 관계를 정의하기 위해서 기본키를 다른 테이블의 외래키로 복사하는 경우 사용 |
UNIQUE KEY |
고유키 - 테이블에 저장된 데이터를 고유하게 식별 - NULL은 고유키의 제약조건의 대상이 아님 |
NOT NULL |
NULL 값 입력 금지 |
CHECK |
입력할 수 있는 도메인 제한 - 값의 범위 - 평가할 수 있는 논리식 지정(TRUE OR FALSE) |
'DB' 카테고리의 다른 글
[MYSQL] MYSQL 설치 (0) | 2019.08.22 |
---|---|
MSSQL - MSSQL_SERVER 2014 (EXPRESS, 무료 설치 (0) | 2019.07.11 |
테이블 생성 (SELECT 이용) (0) | 2019.06.25 |
테이블 구조 확인 (DESC) (0) | 2019.06.25 |