在网上查过一些资料,很多人说,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)”。