mysql非主键自增长


mysql并非只有主键才能自增长,而是设为键的列就可以设置自增长。
 
如下:
CREATE TABLE t1 (
    id INT,
    col1 INT auto_increment NOT NULL
);
结果如下:
 
 如果把col1列设为键,就可以创建自增。
CREATE TABLE t1 (
    id INT,
    col1 INT auto_increment NOT NULL,
    key(col1)
);
结果如下:
 
 如果我们把id设为主键,仍然可以创建成功。
CREATE TABLE t2 (
    id INT PRIMARY KEY,
    col1 INT auto_increment NOT NULL,
    key(col1)
);
结果如下:
 
所以自增列必须是键,但不一定非是主键。但一张表能否有多个自增列?
答:一张表只能有一个自增列。
CREATE TABLE t3 (
    id INT PRIMARY KEY auto_increment,
    col1 INT auto_increment NOT NULL,
    key(col1)
);
结果如下:
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM