我如何让Mysql增量生成0到99999之间的数字并将其添加到记录中?同样一旦达到99999,它就从0开始。Mysql重复增量数字?
1
A
回答
0
你想要AUTO_INCREMENT。
虽然让它在99999重置可能是一个问题。我也会质疑你的要求,它的工作方式。
0
如果您需要重置,你可以创建一个触发器:
create trigger auto_number before insert on `sometable`
begin
new.autoid = coalesce((select max(autoid)+1 from sometable),0) % 1000000
end
从本质上讲,当一个insert
发生,这只是设置autoid
列作为一个最大的ID。但是,它使用模数来确保数字重复为1,000,000。
1
选择数据(或通过视图)时生成一个不断递增的数字(例如,标准的auto_increment),然后,通过MOD 100000运行它:
⋮
99998 % 100000 = 99998
99999 % 100000 = 99999
100000 % 100000 = 0
100001 % 100000 = 1
⋮
可以通过创建使这种透明对于选择一个观点:
CREATE SQL SECURITY INVOKER VIEW whatever AS
SELECT
foo, bar, baz, autoid % 100000 AS autoid, taz
FROM base_table;
不幸的是,这种观点可能不会更新和MySQL不支持INSTEAD OF
触发,所以你必须发送写入基础表。
相关问题
- 1. mySQL数据库:重置自动增量字段
- 2. MySQL INSERT ....在重复更新 - 向自动增量添加一个
- 3. mySQL自动增量问题:重复条目'4294967295'为键1
- 4. 当插入重复记录时限制MYSQL的自动增量
- 5. Mysql:与主键自动增量重复键错误
- 6. 由于自动增量重复无法创建MYSQL表
- 7. 使用sed删除重复和增量字符的字符串?
- 8. 仅MySQL转储恢复增量只有
- 9. MySql复合PK与自动增量
- 10. 增量计数器mysql
- 11. 自动增量列不会增加mysql表中的数字
- 12. MySQL自动增量字符字段
- 13. MySQL组增量
- 14. 增量MySQL
- 15. 重置mysql中的自动增量值
- 16. Mysql自动增量重置自己? xamp
- 17. 查找重复和增量值
- 18. 用增量ID重复html单位
- 19. 重复一个循环的增量
- 20. Numpy(稀疏)重复索引增量
- 21. 重复键主键自动增量
- 22. Magento重复的订单增量ID
- 23. 增量更新插入...重复密钥
- 24. 导轨4:增量重复项目
- 25. MySQL向列插入重复字的数量
- 26. 重置计数器增量
- 27. MySQL的增量权重字段上插入
- 28. 从PHP删除后重置mysql自动增量字段值?
- 29. 递增mysql计数字段
- 30. 来自2列的重复数据的计数器增量
我不认为有重置'auto_increment'的方法,除非您删除行,截断表或重新创建列。 – Eric 2009-08-06 12:23:07