MySQL 테이블 수정 명령어
- IT
- 2016. 8. 18. 17:57
반응형
이름 바꾸기
ALTER TABLE tablename RENAME bbs;
컬럼 속성 수정
ALTER TABLE tablename MODIFY colname INT NOT NULL AUTO_INCREMENT PRIMARY KEY;
ALTER TABLE tablename MODIFY 컬럼이름 컬럼속성
컬럼 이름 바꾸기
ALTER TABLE tablename CHANGE colname newcolname INT NOT NULL AUTO_INCREMENT;
CHANGE
는 컬럼 속성뿐아니라 이름도 바꿔준다.
컬럼 추가
ALTER TABLE bbs ADD name VARCHAR(10);
ALTER TABLE tablename ADD 컬럼이름 컬럼속성
컬럼 삭제
ALTER TABLE bbs DROP colname;
특정 컬럼 뒤에 새로운 컬럼 추가
ALTER TABLE bbs ADD newcol VARCHAR(10) AFTER num;
num 컬럼 뒤에 newcol 컬럼 추가.
기존 컬럼을 지우고 맨 앞에 컬럼 추가
ALTER TABLE bbs DROP newcol, ADD newcol VARCHAR(10) FIRST;
맨 앞에 추가하려면 FIRST를 사용한다.
PRIMARY KEY 속성 삭제
ALTER TABLE test DROP PRIMARY KEY;
이미 PRIMARY KEY인 컬럼의 속성을 바꿀 때
PRIMARY KEY 속성은 지정하지 말고, NOT NULL 속성을 함께 지정해 주면 기존 PRIMARY KEY 속성은 그대로 남은 상태로 컬럼의 속성을 변경할 수 있다.
ALTER TABLE test MODIFY a CHAR(1) NOT NULL;
테이블의 내용 전체 삭제
SET FOREIGN_KEY_CHECKS = 0; TRUNCATE TABLE tablename; SET FOREIGN_KEY_CHECKS = 1;
트랜잭션에 의해 복구될 수 없다.
MySQL 5.5.7 부터 FOREIGN KEY 설정이 된 테이블을 TRUNCATE 하려면 FOREIGN_KEY_CHECKS을 0
으로 지정해야한다. 안 그러면 Cannot truncate a table referenced in a foreign key constraint
오류가 발생한다.
반응형
'IT' 카테고리의 다른 글
JAVA부터 Spring까지 취업 테크트리를 공유해 보고자 합니다. (4) | 2017.08.15 |
---|---|
Mysql에서의 nextval, currval (0) | 2016.08.20 |
MySQL 테이블 생성시 현재시간을 default로 설정하기 (0) | 2016.08.18 |
mysql 커넥션풀(connection pool) (0) | 2016.08.15 |
커넥션 풀(connection pool) 종류 및 사용 예제 (0) | 2016.08.15 |
이 글을 공유하기