SQL 创建表并设置自动增量值而不更改表
Posted
技术标签:
【中文标题】SQL 创建表并设置自动增量值而不更改表【英文标题】:SQL create table and set auto increment value without Alter table 【发布时间】:2015-06-11 18:34:45 【问题描述】:例如,我正在创建下表:
创建表人员 ( ID int NOT NULL AUTO_INCREMENT, 姓 varchar(255) 非空, 名字 varchar(255), 地址 varchar(255), 主键 (ID) )
据我所知,Auto increment 的值可以像这样通过 Alter table 进行修改
ALTER TABLE 人员 AUTO_INCREMENT=100;
但我只是想知道有没有办法在创建表时设置自动增量的值?像这样?
创建表人员 ( ID int NOT NULL AUTO_INCREMENT = 100, 姓 varchar(255) 非空, 名字 varchar(255), 地址 varchar(255), 主键 (ID) )
【问题讨论】:
【参考方案1】:是的,您可以在创建表格时这样做
CREATE TABLE Persons (
ID int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
PRIMARY KEY (ID)
)AUTO_INCREMENT=100;
这是一个测试用例
mysql> CREATE TABLE Persons (
-> ID int NOT NULL AUTO_INCREMENT,
-> LastName varchar(255) NOT NULL,
-> FirstName varchar(255),
-> Address varchar(255),
-> PRIMARY KEY (ID)
-> )AUTO_INCREMENT=100;
Query OK, 0 rows affected (0.13 sec)
mysql> insert into Persons (LastName) values ('CCC');
Query OK, 1 row affected (0.03 sec)
mysql> select * from Persons ;
+-----+----------+-----------+---------+
| ID | LastName | FirstName | Address |
+-----+----------+-----------+---------+
| 100 | CCC | NULL | NULL |
+-----+----------+-----------+---------+
1 row in set (0.00 sec)
【讨论】:
【参考方案2】:试试这个
CREATE TABLE Persons (
ID int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
PRIMARY KEY (ID)
)AUTO_INCREMENT=100;
【讨论】:
以上是关于SQL 创建表并设置自动增量值而不更改表的主要内容,如果未能解决你的问题,请参考以下文章