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

MySQL에서 001부터 시작하는 자동 증가 사용자 ID 시퀀스 번호를 표시하시겠습니까?

<시간/>

이를 위해 ZEROFILL을 사용하고 동일한 시퀀스에서 시작하도록 테이블을 변경하십시오 -

alter table yourTableName
   change yourColumnName yourColumnName int(3) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT PRIMARY KEY;

위의 구문을 이해하기 위해 먼저 테이블을 생성하겠습니다 -

mysql> create table DemoTable1958
   (
   UserId int,
   UserName varchar(20)
   );
Query OK, 0 rows affected (0.00 sec)

다음은 생성된 시퀀스 번호를 001부터 시작하도록 변경하는 쿼리입니다.

mysql> alter table DemoTable1958
   change UserId UserId int(3) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT PRIMARY KEY;
Query OK, 0 rows affected (0.00 sec)
Records: 0  Duplicates: 0  Warnings: 0

테이블 설명을 확인해 보겠습니다.

mysql> desc DemoTable1958;

이것은 다음과 같은 출력을 생성합니다 -

+----------+--------------------------+------+-----+---------+----------------+
| Field    | Type                     | Null | Key | Default | Extra          |
+----------+--------------------------+------+-----+---------+----------------+
| UserId   | int(3) unsigned zerofill | NO   | PRI | NULL    | auto_increment |
| UserName | varchar(20)              | YES  |     | NULL    |                |
+----------+--------------------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable1958(UserName) values('Chris');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1958(UserName) values('David');
Query OK, 1 row affected (0.00 sec)

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> select * from DemoTable1958;

이것은 다음과 같은 출력을 생성합니다 -

+--------+----------+
| UserId | UserName |
+--------+----------+
|    001 | Chris    |
|    002 | David    |
+--------+----------+
2 rows in set (0.00 sec)