2013. 7. 29. 13:21

참고 및 출처 : http://www.zetswing.com/bbs/board.php?bo_table=MySQL_LEC&wr_id=8


Auto_increment 예약어


자동으로 1씩 증가되는 키워드


사용조건


1. not null

2. 데이터형이 mediumint, int bigint

3. 기본키나 고유키가 반드시 있어야 함.


사용예제

create table test

(

a int not null auto_increment primary key,

b char(10)


);


방법1

insert into test values(1, 'aa');

 - a 컬럼값에 1인 값이 있다면 중복에러를 발생하고 중복값이 없다면 해당값 그대로 입력됨.


방법2

insert into test(b) values ('aa');

- 첫번째 입력이라면 a컬럼에 자동으로 1이 들어가며 첫번째 입력이 아니라면 마지막에 입력된 값에서 자동으로 1이 더해져서 입력됨.


방법3

insert into test(a,b) values (null, 'aa');

- 방법2와 동일한 방법

- 첫번째 컬럼값이 null값이므로 auto_increment가 없다면 에러가 나고 있다면 auto_increment가 실행되어 자동채번이 된다.


insert into test(a,b) values ("", 'aa');

- 방법2와 동일


※ 방법1보다 방법2의 SQL쿼리가 더명확하고 간결하므로 자주 사용


- 자동 증가값 초기화

alter table test auto_increment = 1

※ 이왕이면 테이블의 튜플들을 다 지우고 초기화한다.


- 마지막으로 입력한 auto_increment 값 알아내기

select last_insert_id();


 

'DBMS > MySQL' 카테고리의 다른 글

MYSQL 성능 향상 정리  (0) 2013.07.29
초급QUERY  (0) 2013.07.29
JOIN(조인) 사용하기  (0) 2013.07.29
4.0 추가기능  (0) 2013.07.29
Mysql insert 와 select 같이 쓰기  (0) 2013.07.29
Posted by 1+1은?