[MySQL] Table 수정하기 (alter 용법)


MySql을 처음 사용하면, 명령어의 사용이 미숙해서 어려움이 많을 것이다. 나도 MySql을 이번 기회에 처음 써 보게 되어서 어려움이 있었는데, 특히 DB Table을 만들고 이를 수정하거나 컬럼을 추가하거나 삭제하는 방법을 찾아보다가 잘 정리되어 있는 글을 보고 이렇게 올린다.








 @살펴보기 전에 꾹 눌러 주세요!!!(로그인이 필요 없어요)
 








MySql | Table 수정 위한 alter 용법

0. 개요

ALTER TABLE에는 다음 세가지 형식이 있습니다.

ALTER TABLE table_name ADD ( ... ) ;
ALTER TABLE table_name MODIFY( ... ) ;
ALTER TABLE table_name DROP PRIMARYKEY ;


1. 필드 추가

ALTER TABLE table_name ADD ( ... ) ;

# ALTER TABLE diary ADD addr char(20);
diary 테이블에 속성이 char(20)인 'addr' 칼럼 추가

# ALTER TABLE diary ADD addr char(20) AFTER d;
diary 테이블에 속성이 char(20)인 'addr' 칼럼을 'd' 칼럼 뒤에 추가

# ALTER TABLE diary ADD INDEX (d), ADD PRIMARY KEY (a);
컬럼 d에 새로운 인텍스를 생성 컬럼 a에 primary key 생성.

# ALTER TABLE diary ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (c);
diary 테이블에 c라는 컬럼을 새로 생성시키는데
INT (INTEGER) : 정수
UNSIGNED : 양수
NOT NULL : 아무데이타가 없으면 '0'
AUTO_INCREMENT : 데이타가 자동적으로 입력됨...
ADD INDEX (c) : 컬럼 c에 대해서 인텍스 생성


2. 필드 수정

ALTER TABLE table_name MODIFY( ... ) ;

# ALTER TABLE test MODIFY (age NUMBER NULL );
NOT NULL을 NULL로 바꾸기

# ALTER TABLEtest MODIFY (name VARCHAR2( 20 ) );
열의 폭 늘이기


3. 필드 삭제

ALTER TABLE table_name DROP PRIMARYKEY ;

# ALTER TABLE ddiass DROP COLUMN c;
컬럼 c를 삭제


4. 기타

# ALTER TABLE t1 RENAME t2;
테이블 이름을 t1에서 t2로 바꿈

# ALTER TABLE t2 CHANGE a a TINYINT NOT NULL, CHANGE b c CHAR(20);
테이블 내의 컬럼 속성을 바꿈. 원래 컬럼 a는 INTEGER였는데 TINYINT로,
컬럼b는 CHAR(10)이었는데 컬럼이름은 c로 이타 타입은 CHAR(20)으로 수정



글이 마음에 드셨거나 도움이 되셨다면
댓 글을 남겨 주세요
저에게 큰 힘이 됩니다.

손가락 추천 부탁 드려요~!!!
(로그인이 필요 없습니다)