Computer >> Máy Tính >  >> Lập trình >> MySQL

Việc sử dụng SERIAL làm tên cột đã bao gồm 'NOT NULL' trong MySQL chưa?

Trong MySQL, SERIAL là bí danh cho BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE. Vì vậy, không sử dụng NOT NULL sau SERIAL, vì nó đã bao gồm NOT NULL như một phần trong định nghĩa của nó.

Hãy để chúng tôi xem một ví dụ và tạo một bảng. Ở đây, chúng ta có một cột có tên là “serial” -

mysql> create table DemoTable
(
   Id serial
);
Query OK, 0 rows affected (0.42 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Chúng tôi không bao gồm bất kỳ giá trị nào trong khi chèn -

mysql> insert into DemoTable values();
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable values();
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable values();
Query OK, 1 row affected (0.06 sec)
mysql> insert into DemoTable values();
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values();
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable values();
Query OK, 1 row affected (0.07 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select *from DemoTable;

Điều này sẽ tạo ra kết quả sau -

+----+
| Id |
+----+
|  1 |
|  2 |
|  3 |
|  4 |
|  5 |
|  6 |
+----+
6 rows in set (0.00 sec)