问题描述
如何在oracle中删除id后 再次让id连续比如我删除了id为1,3,5的数据后再次查询 id就不再试从1开始了,而是从2请教各位 如何做到 问题补充:redstarofsleep 写道
解决方案
id是一个唯一值,最好的处理方式就是一次写入永不更改。你的改动会带来级联效应,系统中所有涉及到这个表的外键都要更改。而你改动了这个值有什么好处呢?你这个改动就像一个城市的车牌因为其中一个号码报废了,所有的后续车牌都要递减一个号码一样。有意义么?
解决方案二:
明白你的意思了,你就是想让ID永远都连续。这个应该不能自动完成,要你手动去做了。但是你这样做有什么意思呢?
解决方案三:
那不是说 你每删除一个数据,这个列表的ID都要通过某个操作来更新一把ID?如果这个ID是某个表的外键,那部是代表着,删除这个ID同时要对多个表的关联值进行改变?如果删除动作频繁,这样做好吗?
解决方案四:
前两天刚回答了一个同样的问题,这么做是不好的……
解决方案五:
引用我是想说 当你删除1,3,5之后在查询的时候id 还是按照1,2,3,4,5这样排序而不是2,4,6,7,8,9还是不明白你说什么。。。。。什么叫删除了1,3,5还是按1,2,3,4,排序。。。1不是删掉了么?
解决方案六:
引用比如我删除了id为1,3,5的数据后再次查询 id就不再试从1开始了,而是从2 你把1删掉了,查询从2开始有什么问题嘛???????你是不是想问插入数据啊?1,2,3,4,5把5这条记录删掉了,再插入一条ID是6。这种情况是因为ID交给secquence管理,secquence只增不减。
时间: 2024-08-04 05:49:13