2014-01-08 3 views
0

모든mysql을 삽입 자동 증가 MUL 키

가정 해 보겠습니다 I가 다음 MySQL의 테이블 testtable :

+----------+------------------------------+------+-----+---------+----------------+ 
| Field | Type       | Null | Key | Default | Extra   | 
+----------+------------------------------+------+-----+---------+----------------+ 
| testID | bigint(12) unsigned zerofill | NO | MUL | NULL | auto_increment | 
| testcol | varchar(10)     | YES |  | NULL |    | 
| testcol1 | varchar(10)     | YES |  | NULL |    | 
| testcol2 | varchar(10)     | YES |  | NULL |    | 
| testcol3 | varchar(10)     | YES |  | NULL |    | 
| testcol4 | varchar(10)     | YES |  | NULL |    | 
+----------+------------------------------+------+-----+---------+----------------+ 

내가 다음의 말을하자, 실행하여 여러 행을 삽입 5 회 :

INSERT INTO testtable VALUES (null, 'testcol', 'testcol1', 'testcol2', 'testcol3', 'testcol4');

testID = 000000000002으로 행 하나를 삭제하십시오.

DELETE FROM testtable WHERE testID = 000000000002;

내 질문은 :

윌 시험 ID가 같은 삽입 문을 실행하여 나중에 다시 000000000002으로 재 할당 할 수 ?

미리 감사드립니다.

답변

1

아니요 키를 지정하지 않으면 엔진이 자동 증가 값을 새로 할당합니다. 0000000002 키에 명시 적 삽입을 할당 할 수 있습니다.

INSERT INTO testtable VALUES (0000000002, 'testcol', 'testcol1', 'testcol2', 'testcol3', 'testcol4'); 
+0

답장을 보내 주셔서 감사합니다. 나는 명백한 삽입을하고 싶지 않다. 나는'testID'가 재 할당되는 문제에 직면하고 있으며 그 이유를 알아 내려고합니다. – Lyon