'alter'에 해당되는 글 2건

추가
ALTER TABLE `log` ADD INDEX(`reg_date`);

삭제
ALTER TABLE `log` DROP INDEX `reg_date`;
블로그 이미지

세이박스

세이박스는 세상의 모든 이야기를 담는 소통박스 입니다.

댓글을 달아 주세요

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)으로 수정
블로그 이미지

세이박스

세이박스는 세상의 모든 이야기를 담는 소통박스 입니다.

Tag alter, mysql, table

댓글을 달아 주세요