MySQL에서 테이블을 생성하는 방법을 예제와 함께 설명드리겠습니다.
MySQL Workbench에서 진행하였습니다.
기본 구조
CREATE TABLE의 간단한 구조는 다음과 같습니다.
CREATE TABLE <테이블명> (
<컬럼명> <컬럼타입>,
<컬럼명> <컬럼타입>,
...
)
CREATE TABLE을 사용하여 테이블을 만들었습니다.
생성한 테이블 상세 정보 확인
DESCRIBE <테이블명>
describe 명령어를 사용하여 아까 만든 테이블의 정보를 확인하였습니다.
CREATE TABLE에서 지정한 컬럼명과 타입이 잘 적용되어 만들어진 것을 확인할 수 있습니다.
컬럼 옵션
컬럼에 다양한 옵션들을 사용해서 테이블을 생성할 수 있습니다.
많은 옵션을 적용할 수 있지만, 자주 사용되는 옵션 몇개를 소개드리겠습니다.
CREATE TABLE <테이블명> (
<컬럼명> <컬럼타입> [NOT NULL | NULL] [DEFAULT] [AUTO_INCREMENT] [COMMENT],
...
)
NOT NULL | NULL : 컬럼 데이터에 NULL을 허용할지 말지 선택하는 옵션입니다.
DEFAULT : 해당 컬럼의 기본 값을 설정할 수 있습니다.
AUTO_INCREMENT : 정수나 실수 타입인 컬럼에 사용할 수 있는 옵션입니다. AUTO_INCREMENT를 사용하면 데이터가 등록될 때 이전 데이터의 +1된 값이 저장됩니다. 테이블 당 한 컬럼만 가질 수 있습니다. 보통 기본키에 많이 사용됩니다.
COMMENT : 컬럼에 대한 설명을 등록하는 옵션입니다. 최대 1024자까지 입력할 수 있습니다.
옵션은 다음과 같이 사용할 수 있습니다.
주의할 점은 AUTO_INCREMENT 옵션을 사용하려면 테이블에 KEY가 필요합니다.
그래서 위의 예시에서 id 컬럼에 PRIMARY KEY 옵션을 주었습니다.
comment는 필수 옵션은 아니지만 comment에 해당 컬럼에 대한 설명을 간략하게 적어놓으면 나중에 해당 테이블을 사용해서 작업할 일이 생겼을 때 많은 도움이 됩니다.
테이블 복제
다른 테이블의 구조를 복제해서 테이블을 생성할 수 있습니다.
CREATE TABLE <테이블명> LIKE <원본 테이블명>
city 테이블과 구조가 같은 테이블을 생성하였습니다.
참고로, 기존 테이블에 있는 데이터는 복제가 안됩니다.