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

컬럼에 'NULL', '0' 또는 No Value를 삽입할 때 MySQL은 AUTO_INCREMENT 컬럼에 시퀀스 번호를 할당합니까?

<시간/>

MySQL은 테이블의 열에 NULL, 0 또는 No Value를 삽입하더라도 자동으로 AUTO_INCREMENT 열에 시퀀스 번호를 할당합니다.

예시

mysql> create table test123(id INT PRIMARY KEY NOT NULL AUTO_INCREMENT, Name Varchar(10));
Query OK, 0 rows affected (0.15 sec)

위의 쿼리는 'id'와 'Name'이라는 열이 있는 'test123'이라는 MySQL 테이블을 생성했습니다. 'id' 열은 AUTO_INCREMENT로 선언됩니다. 이제 'Name' 열에 'No Value', '0' 또는 'NULL'을 삽입하면 MySQL은 'id' 열에 시퀀스 번호를 할당합니다. 아래 쿼리 결과에서 확인할 수 있습니다 -

mysql> Insert Into test123(Name) values(''),('0'),(NULL);
Query OK, 3 rows affected (0.07 sec)
Records: 3 Duplicates: 0 Warnings: 0

mysql> Select * from test123;
+----+------+
| id | Name |
+----+------+
| 1  |      |
| 2  |    0 |
| 3  | NULL |
+----+------+
3 rows in set (0.00 sec)