用于 MySQL 的语法
下列 SQL 语句把 "Persons" 表中的 "P_Id" 列定义为 auto-increment 主键:
CREATE TABLE Persons (P_Id int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255),PRIMARY KEY (P_Id)
);
MySQL 使用 AUTO_INCREMENT 关键字来执行 AUTO_INCREMENT 任务。
默认地,AUTO_INCREMENT 的开始值是 1,每条新记录递增 1。
要让 AUTO_INCREMENT 序列以其他的值起始,请使用下列 SQL 语法:
ALTER TABLE Persons AUTO_INCREMENT=100;#从100开始
要在 "Persons" 表中插入新记录,我们不必为 "P_Id" 列规定值(会自动添加一个唯一的值):
INSERT INTO Persons (FirstName,LastName) VALUES ('Bill','Gates');#第一种方案
INSERT INTO Persons (P_Id,FirstName,LastName) VALUES (NULL,'Bill','Gates');#第二种方案
INSERT INTO Persons (P_Id,FirstName,LastName) VALUES (NULL,'Bill','Gates');#第三种方案
以上3种方案任选1种,其余可能会提示错误!
上面的 SQL 语句会在 "Persons" 表中插入一条新记录。"P_Id" 会被赋予一个唯一的值。"FirstName" 会被设置为 "Bill","LastName" 列会被设置为 "Gates"。
INSERT INTO Persons(P_Id,FirstName,LastName) VALUES(1005,'Bill','Gates');#破坏了自动递增特性