CREATE - 테이블 생성
CREATE TABLE [테이블명] ( 컬럼명1 컬럼타입1() [제약조건], 컬럼명2 컬럼타입2() [제약조건], … );
예시
create table account(
account_no int(4) primary key,
account_date date default now(),
code char(14) not null,
withdraw int(12),
deposit int(12),
balance int(12));
다른 테이블을 이용해 테이블 생성하기
create table [테이블명] as select 구문;
key값은 복사가 안된다(따로 추가 필요)
제약조건
PRIMARY KEY
- 테이블 대표값(UNIQUE, NOT NULL)
FOREIGN KEY
- PK 연결되는 다른 테이블 KEY
- FK는 PK 데이터 모두 가지고 있어야 한다.
예시
CREATE TABLE FK_TEST(
ID CHAR(10),
HIREDATE DATE,
FOREIGN KEY(ID) REFERENCES TEST(ID));
UNIQUE
- 같은 열에서 겹치지 않도록
CHECK
- 원하는 값만 넣도록 (선택)
DEFAULT
- 기본값
NULL 허용
- NOT NULL, NULL
예제
다음 테이블(Person)을 생성하시오.
ID 문자(10자리) -> PK
GENDER (문자 1개) -> F, M
AGE 숫자(3자리) -> NOT NULL, 0~200
BIRTHDAY 날짜 -> NOT NULL,
DEFAULT 2021-01-01
-- 제약조건명 없이 생성
create table person(
ID char(10) primary key,
GENDER char(1) check(GENDER in ('F','M')),
AGE int(3) not null check(AGE between 0 and 200),
BIRTHDAY date not null default '2021-01-01'
);
-- 제약조건명 생성
create table person(
ID char(10),
GENDER char(10),
AGE INT(3) not null,
BIRTHDAY date not null default '2021-01-01',
constraint ID_pk primary key(ID),
constraint GENDER_ck check(GENDER in ('F','M')),
constraint AGE_ck check(AGE between 0 and 200)
);
결과
DROP - 테이블 삭제
DROP TABLE [테이블명] ;
예시
DROP TABLE person;
'IT 차곡차곡 > MariaDB' 카테고리의 다른 글
[MariaDB] INSERT에서 서브쿼리 사용하기 (0) | 2021.01.22 |
---|---|
[MariaDB] 문자열 함수 정리2 (0) | 2021.01.21 |
[MariaDB] autocommit 해제하는 방법 (0) | 2021.01.20 |
[MariaDB] 문자열 함수 정리1 (0) | 2021.01.19 |