Change the step auto_increment fields increment by

本秂侑毒 提交于 2019-11-27 02:48:35

问题


How do I change the amount auto_increment fields in MySQL increment by from the default (1) to n?


回答1:


If you want to change autoincrement step from 1 to N then there is a solution. It could be done on MySQL server side: look for '--auto-increment-increment' startup option or use following command SET @@auto_increment_increment=2;, but be warned that this is a server wide change (all tables will increment by 2).

Unortodox solutions could that could be considered:

  1. Launch two MySQL servers on same machine, with different ports (one with auto_increment_increment=1 other with auto_increment_increment=2)
  2. Use some serverside magic (PHP, ASP ,???) combined with turning off tables auto_increment to manually calculate (simple peek at last id and +=2 would be ok) and provide id in INSERT query.

Some official MySQL FAQ




回答2:


You can change it using ALTER TABLE:

ALTER TABLE table AUTO_INCREMENT = n;

Or if you want to do set it from start:

CREATE TABLE table (...) AUTO_INCREMENT = n;



回答3:


You can also use ALTER SEQUENCE sequence_name INCREMENT BY N where N is the new incremnent value.




回答4:


alter table <table name>  auto_increment=n

where n is the number you want to start



来源:https://stackoverflow.com/questions/1686327/change-the-step-auto-increment-fields-increment-by

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!