数据库中删除一条信息,id或自定义数字字段会出现空缺,应该如何处理?

一般都不会很容易注意到这个问题,因为ID足够大,我没必要在意这个号码是否过大,但是如果你是在做一个数据量特别大的系统的时候,真的得考虑这些东西了。因为近期一个项目,我负责数据库设计这块,然后就感觉到了很困惑的这么一点,因为这是一个层级结构,分了三层,每一层的数据又设计到更新,我采用的是类似于身份证这样的,每一层用相同的标志<!--more-->,比如第一层2位,第二层4位,第三层6位,并且,第三层的前两位代表其所在第一层的哪项,第三层中间两位又能表示其第二层的对应位,就这样,但是有个问题是,如果涉及到删除操作的话,就会有个很头疼的问题:ID号被删了,下次再插入时,就在最大ID+1,但是两位数最大能表示只有99位,这样一来,很可能在最后的时候就会导致根本装不下而系统崩溃。所以这个问题必须解决!!!待续……

今天看到一种做法:MD5算法加密一下ID,然后就成了31位,31位往上加,你想想,这么长的位数,够它加好长一阵子呢!

posted @ 2013-06-30 08:00  山顶的鱼  阅读(303)  评论(0编辑  收藏  举报