Create
CREATE <OR REPLACE TABLE | TABLE IF NOT EXISTS> <table>
( <column> <type> AUTO_INCREMENT,
<column> <type> NOT NULL,
<column> <type> PRIMARY KEY,
<column> <type> UNIQUE,
<column> <type> CHECK (<condition>),
<column> <type> DEFAULT <value>,
PRiMARY KEY(<column>),
FOREIGN KEY(<column>)
REFERENCES <table>(<column>)
ON UPDATE <way>
ON DELETE <way>
);
CREATE <OR REPLACE TABLE | TABLE IF NOT EXISTS> <table>
<select statement>; -- select 문을 이용한 table 만들기
Option | Explanation | Way |
---|
AUTO_INCREMENT | 1부터 자동으로 숫자가 지정, 지정한 열이 PRIMARY KEY나 UNIQUE여야 함 | |
NOT NULL | NULL이 입력될 수 없음 | |
UNIQUE | 같은 값이 올 수 없음 | |
PRIMARY KEY | NOT NULL + UNIQUE | |
FOREIGN KEY | 다른 테이블의 열과 연결, 지정한 열이 PRIMARY KEY나 UNIQUE여야 함 | |
| CASCADE | 함께 작동 |
| SET NULL | NULL로 설정 |
| RESTRICT | error 발생 |
Alter
ALTER TABLE <table> ADD COLUMN <column> <type> <option>; -- add column
ALTER TABLE <table> ADD COLUMN <column> <type> <option> <column>; -- add column behind
ALTER TABLE <table> MODIFY COLUMN <column> <type> <option>; -- modify column
ALTER TABLE <table> CHANGE COLUMN <column> <column> <type> <option>; -- change column name
ALTER TABLE table_name DROP COLUMN <column>; -- drop column
ALTER TABLE <table> RENAME <table>; -- change table name
ALTER TABLE <table>
ADD CONSTRAINT PRIMARY KEY(<column>); -- primary key 지정
ALTER TABLE <table>
ADD CONSTRAINT FOREIGN KEY(<column>)
REFERENCES <table> (<column>)
ON UPDATE <way>
ON DELETE <way>; -- foreign key 지정
ALTER TABLE <table>
ADD CONSTRAINT UNIQUE(<column>); -- unique 지정
ALTER TABLE <table> DROP PRIMARY KEY; -- primary key 삭제
ALTER TABLE <table> DROP FOREIGN KEY; -- foreign key 삭제
ALTER TABLE <table> DROP UNIQUE; -- unique 삭제
Drop
DROP TABLE IF EXISTS <table>;