반응형
DDL
테이블 생성
CREATE TABLE [테이블명] (
[COLUMN NAME] INT PRIMARY KEY,
[COLUMN NAME] VARCHAR(20) NOT NULL,
[COLUMN NAME] INT AUTO_INCREMENT,
[COLUMN NAME] DATETIME
)
- PRIMARY KEY : 고유한 키 값을 갖는 필드
- AUTO_INCREMENT : 레코드가 생성될 때마다 자동으로 증가
- NOT NULL : null 값 허용 안 함
create table items (
int not null auto_increment,
content varchar(300),
due_date date,
`use` int(1) not null default 1,
primary key(id)
)
create table phonebook (
id int primary key auto_increment,
name varchar(10) not null,
phonenum varchar(14) default '010-0000-0000',
email varchar(20),
regDate datetime
)
위와 같이 테이블을 생성할 수 있다.
use와 같은 명령어를 테이블명 또는 컬럼명으로 하고 싶은 경우 ` (backtick)으로 감싸면 사용할 수 있다.
primary key, foreign key는 제일 마지막에 따로 명시해줄 수 있다.
테이블 수정
컬럼(Column) 수정
alter table phonebook modify column name varchar(9);
# name : varchar(10) -> varchar(9)
alter table phonebook modify column phonenum varchar(15);
# phonenum : varchar(14) -> varchar(15)
컬럼(Column) 추가
# phonebook 테이블에 age 컬럼을 추가한다.
alter table phonebook add column age int(3) default 1;
컬럼(Column) 삭제
# phonebook 테이블에 있는 email 컬럼을 삭제한다.
alter table phonebook drop column email;
테이블 이름 변경
# phonebook 테이블의 이름을 phone으로 변경한다.
alter table phonebook rename phone;
컬럼(Column) 순서 이동
컬럼(Column) 이름 변경
# phone 컬럼의 이름을 number로 변경한다.
alter table phone change column phone number varchar(20) not null;
테이블 삭제
DROP TABLE [IF EXISTS] [테이블명];
IF EXISTS 조건을 넣으면 해당 테이블이 있는 경우에만 삭제하는 것으로 된다.
DESC
DESC [테이블명];
테이블 열 구조 확인
반응형