序列的值好象回滚不掉,怎么样才能保证序列的值是连续的? 不能 序列的值会因为 rollback ,数据库的 shutdown abort ,共享池的刷新 而造成不连续 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 序列的值不能回滚,并且,序列的连续性不一定被保证在建序列的时候,+一句 no cache能够加强序列的连续性但是,有时候还是不能连续性,建议要是确实需要连续的计数还是自己写一个函数吧 如果你想要一个连续的序列值可以考虑用一个表来替代 sequence alter sequence seq1 nocache 抛弃序列,select max(id) from...然后引用此值 select max(id) from...有没有考虑多用户?所以说:保持绝对连续没有可能!我非常赞同这句话。 始终保持连续不太可能,如果从中删除一条记录呢,难道要把所有的记录再调整一遍吗?所以说要求始终连续很难做。如果想那样做,还不如用rownum,不过没什么必要:) 在建sequence时设置cache 10可以让该序列每次取下10个序列的值供用户使用,在系统shutdown abort时刷新共享池,系统将 没输完就发出了 接上系统将丢弃没有用完的序列值,导致序列不连续,如果将cache设为0,系统将不会将序列的值放到缓冲区中,影响速度,如果设置初始文件中cache的值,可以让序列连续,(此方法本人未验证) 请推荐国内好的数据交换中心解决方案或产品 oracle权限问题 请教一个基础的SQL语句 oracle 性能 高分解决oracle时间相减问题 查询表是否是空用什么命令呀?急!! 加了一个实例后无法进入sqlplus了 关于USER_CONS_COLUMNS表的问题 TNS适配器 是什么?安装oracle 时提示“TNS适配器错误”,高分求救!! oracle字典使用 清华居然搞这个行动,不敢相信 一个表为什么有时候需要2个或2个以上以上的主键呢???
在建序列的时候,+一句 no cache能够加强序列的连续性
但是,有时候还是不能连续性,建议要是确实需要连续的计数
还是自己写一个函数吧
select max(id) from...
然后引用此值
有没有考虑多用户?所以说:
保持绝对连续没有可能!
我非常赞同这句话。
所以说要求始终连续很难做。
如果想那样做,还不如用rownum,不过没什么必要:)