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

MySQL 자동 증분 ID를 예약하시겠습니까?

<시간/>

MySQL 자동 증분 ID를 예약하기 위한 구문은 다음과 같습니다. -

START TRANSACTION;
insert into yourTableName values(),(),(),();
ROLLBACK;
SELECT LAST_INSERT_ID() INTO @anyVariableName;

위의 구문을 이해하기 위해 테이블을 생성해 보겠습니다. 테이블을 생성하는 쿼리는 다음과 같습니다 -

mysql> create table reservingAutoIncrementDemo
   -> (
   -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY
   -> );
Query OK, 0 rows affected (0.45 sec)

삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하십시오. 쿼리는 다음과 같습니다 -

mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)
mysql> insert into reservingAutoIncrementDemo values(),(),(),();
Query OK, 4 rows affected (0.15 sec)
Records: 4 Duplicates: 0 Warnings: 0
mysql> select *from reservingAutoIncrementDemo;
+--------+
| UserId |
+--------+
| 1      |
| 2      |
| 3      |
| 4      |
+--------+
4 rows in set (0.00 sec)
mysql> rollback;
Query OK, 0 rows affected (0.00 sec)

다음은 MySQL auto_incremented ID를 예약하는 쿼리입니다 -

mysql> SELECT LAST_INSERT_ID() INTO @IncrementedValue;
Query OK, 1 row affected (0.00 sec)

예약된 auto_incremented 값을 확인해보자. 쿼리는 다음과 같습니다 -

mysql> select @IncrementedValue;

다음은 출력입니다 -

+-------------------+
| @IncrementedValue |
+-------------------+
| 1                 |
+-------------------+
1 row in set (0.00 sec)