คำอธิบาย
ใน MySQL SERIAL เป็น Alias (ชื่อเรียกทางเลือก) ของ BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE ดังนั้น ห้าม เขียน NOT NULL ต่อท้าย SERIAL เพราะมีอยู่ในตัวแล้ว
ขั้นตอนการสร้างตาราง
mysql> create table DemoTable (
Id serial );
Query OK, 0 rows affected (0.42 sec)
การเพิ่มข้อมูล (ไม่ระบุค่า Id)
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)
แสดงข้อมูล
mysql> select * from DemoTable;
ผลลัพธ์ (Auto Increment ทำงานอัตโนมัติ):
+----+ | Id | +----+ | 1 | | 2 | | 3 | | 4 | | 5 | | 6 | +----+ 6 rows in set (0.00 sec)
สรุปคุณสมบัติของ SERIAL
| คุณสมบัติ | คำอธิบาย |
|---|---|
| BIGINT | จำนวนเต็มขนาดใหญ่ (8 ไบต์, -9 แกลลอง ถึง 9 แกลลอง) |
| UNSIGNED | เฉพาะค่าบวกและศูนย์ (0 ถึง 18 แกลลอง) |
| NOT NULL | ห้ามเป็น NULL (มีอยู่ในตัวแล้ว) |
| AUTO_INCREMENT | เพิ่มค่าอัตโนมัติ 1, 2, 3... เมื่อ INSERT ไม่ระบุค่า |
| UNIQUE | ค่าไม่ซ้ำกัน (Primary Key แบบ Implicit) |