mysql非主键自增长

在网上查过一些资料,很多人说,mysql中,只有主键才能设置为自增长列。经过一些深入的了解,其实并非只有主键才能设自增长,而是设为“键(key)”的列就可以设置自增长。

一个失败的句子:create table test(id int,number int auto_increment not null);

提示:there can be only one auto column and it must be defined as a key  看来这个自增长的列必须是”key” 至于什么事key 有什么样的key 。

主键(primary key)也是键(key)的一种,key还包括外键(foreign key)、唯一键(unique key)等,关于key还得再研究

成功的句子:create tabel test(id int primary key ,number  int auto_increment not null,key(number));

将列 number设置成key 成功

注意:根据API每张表只能设置一个字段为自增长字段,这个字段可以是主键,也可以不是主键,如果不是主键,则必须设置为一种“键(key)”。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注