没有缓存顺序

时间:2015-04-07 14:31:19

标签: oracle10g

你可以在下面的场景中帮助我吗

在我们的应用程序中,我们使用没有缓存的序列。即使序列号没有与订单生成。它导致序列生成中的缺口。下面是序列定义。

SEQUENCE_OWNER SEQUENCE_NAME MIN_VALUE MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER

DBOWNER SEQUENCENAME 1 1.00000000000000E + 27 1 N N 0 145095

我们怎样才能无间隙地实现序列号。

谢谢, 加金德拉

1 个答案:

答案 0 :(得分:2)

序列生成的数字并非设计为无间隙。

例如,使用序列号后跟回滚不会回滚使用序列号。

如果你确实需要一个无间隙号码,那么在生成新号码并提交新行时,你必须通过实施锁定机制来牺牲并发性。

或者,如果您需要高并发性,则可以将值保留为空并将其与批处理异步填充。