MySQL Auto_Increment属性简介 - MySQL教程
在游戏行业中,经常会遇到删除“死号”的需求;我们的用户id是自增生成的,在删号程序中,会遇到与数据库断开连接,但还在运行的SQL语句;
对于自增的字段进行行记录的删除,会出现“断裂带”的情况,对于这种无法避免的情况,个人建议在数据维护过程中,analyze table 防止有过多数据存储的碎片; 对于新的自增id,不会复用老的id;下面列出不同存储引擎对auto_increment的支持: 对于 innodb,myisam,memory 存储引擎; 共同点: 1、序列都是单调递增; 2、编号依次递增,不会复用曾经删除的id 3、都可以设置自增ID的初始值; 4、truncate table之后 计数值从1开始; 5、表中均只能有一个字段是自增字段; 不同点: MYISAM支持 复合索引里含有自增序列;innodb与memory都不支持; 对于自增的两个参数(对于多master情况,应多注意这两个参数): auto_increment_offset:确定自增字段的起点值 auto_increment_increment:值变化的增量 如果auto_increment_offset的值大于auto_increment_increment的值,则auto_increment_offset的值被忽略。 本文出自 “技术成就梦想” 博客,请务必保留此出处http://weipengfei.blog.51cto.com/1511707/1213939 查看本栏目更多精彩内容:http://www.bianceng.cn/database/MySQL/ (编辑:佛山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |