1、自動編号(AUTO_INCREMENT),必須與主鍵組合使用
設定為主鍵的列被AUTO_INCREMENT修飾後,預設情況下,起始值為1,增量也為1。
2、主鍵(PRIMARY KEY)
每張資料表隻能存在一個主鍵
主鍵保證記錄的唯一性
主鍵自動為NOT NULL
3、AUTO_INCREMENT必須與主鍵一起使用,主鍵不一定必須與AUTO_INCREMENT一起使用。
舉例:建立表t3,設定主鍵id,無符号并自動編号,屬性name,設定非空。
CREATE TABLE t3(
id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY;
name VARCHAR(20) NOT NULL
);
顯示表t3内容,
SHOW COLUMNS FROM t3;
+----------+----------------------+------+----------+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+----------------------+------+-----------+---------+----------------+
| id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(30) | NO | | NULL | |
+----------+----------------------+------+-----------+---------+----------------+
驗證:向表中添加四個人的名字,那麼這四個人的id就會自動編号
mysql> INSERT t3(username) VALUES ('TOM');
Query OK, 1 row affected (0.07 sec)
mysql> INSERT t3(username) VALUES ('JOHN');
Query OK, 1 row affected (0.06 sec)
mysql> INSERT t3(username) VALUES ('ROSE');
Query OK, 1 row affected (0.07 sec)
mysql> INSERT t3(username) VALUES ('BOB');
Query OK, 1 row affected (0.06 sec)
mysql> SELECT * FROM t3;
+----+----------+
| id | username |
+----+----------+
| 1 | TOM |
| 2 | JOHN |
| 3 | ROSE |
| 4 | BOB |
+----+----------+