Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 자동 증가 번호를 변경하는 방법은 무엇입니까?

<시간/>

auto_increment는 새로 추가된 레코드를 1만큼 자동으로 증가시키는 기본 속성입니다. 시작 번호는 alter 명령을 사용하여 변경할 수 있습니다.

먼저 insert 명령어로 테이블을 생성합니다. 이것은 다음과 같이 주어집니다 -

mysql> CREATE table AutoIncrementTable
-> (
-> id int auto_increment,
-> name varchar(200),
-> Primary key(id)
-> );
Query OK, 0 rows affected (0.70 sec)

테이블을 생성한 후, insert 명령어를 사용하여 레코드를 테이블에 삽입합니다. 이것은 다음과 같이 주어집니다 -

mysql> INSERT into AutoIncrementTable(name) values('Carol');
Query OK, 1 row affected (0.19 sec)

mysql> INSERT into AutoIncrementTable(name) values('Bob');
Query OK, 1 row affected (0.15 sec)

mysql> INSERT into AutoIncrementTable(name) values('John');
Query OK, 1 row affected (0.18 sec)

이제 select 명령을 사용하여 테이블의 레코드를 볼 수 있습니다. 이것은 다음과 같이 주어집니다 -

mysql> SELECT * from AutoIncrementTable;

위 쿼리에서 얻은 출력은 다음과 같습니다. -

+----+-------+
| id | name  |
+----+-------+
| 1  | Carol |
| 2  | Bob   |
| 3  | John  |
+----+-------+
3 rows in set (0.00 sec)

이제 테이블에 3개의 레코드가 삽입되었고 id는 매번 1씩 증가합니다. 이제 다음 레코드의 id가 1000부터 시작하도록 Auto Increment가 변경됩니다.

auto_increment를 변경하는 구문은 다음과 같습니다.

alter table yourTableName auto_increment=startingNumber;

위의 구문은 auto_increment를 1000으로 변경하는 데 사용됩니다. 이는 다음과 같습니다. -

mysql> alter table AutoIncrementTable auto_increment = 1000;
Query OK, 0 rows affected (0.16 sec)
Records: 0 Duplicates: 0 Warnings: 0

auto_increment를 성공적으로 변경한 후 더 많은 레코드가 테이블에 삽입됩니다. 이것은 아래에 나와 있습니다 -

mysql> INSERT into AutoIncrementTable(name) values('Taylor');
Query OK, 1 row affected (0.12 sec)

mysql> INSERT into AutoIncrementTable(name) values('Sam');
Query OK, 1 row affected (0.17 sec)

이제 select 문을 사용하여 테이블 레코드를 봅니다. 4번째 레코드 번호가 1000부터 시작하는 것을 알 수 있습니다.

mysql> SELECT * from AutoIncrementTable;

다음은 출력입니다.

+------+--------+
| id   | name   |
+------+--------+
| 1    | Carol  |
| 2    | Bob    |
| 3    | John   |
| 1000 | Taylor |
| 1001 | Sam    |
+------+--------+
5 rows in set (0.00 sec)