工作中遇到MySQL的实际问题:
当新增加一条column_b的值为2的记录时,column_a的值自动为3;或当我新增加一条column_b的值为1的记录时,column_a的值自动为4。如果实现这个需求,这个表结构如何来设计?
CREATE TABLE test_table ( column_a INT NOT NULL AUTO_INCREMENT, column_b INT NOT NULL, column_c CHAR(30) NOT NULL, PRIMARY KEY (column_b,column_a) ) ENGINE=MyISAM; INSERT INTO test_table (column_b, column_c) VALUES(1,'aa'),(1,'bb'),(2,'cc'),(1,'dd'),(2,'ee');
关键所在:
1、搜索引擎必须是MyISAM,InnoDB报错;
2、组合索引的第二个字段设置AUTO_INCREMENT即可。
作者:铁匠简记
链接:https://www.jianshu.com/p/dee066d0ddf5
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。