我需要生成 唯一且连续的 数字(用于发票),以快速可靠的方式。我目前使用的是 Oracle 序列,但在某些情况下,生成的数字是 不连续 因为可能会发生异常。
我想了几个解决方案来解决这个问题,但都没有让我信服。你推荐什么解决方案?
SELECT MAX (NVL (doc_num, 0)) +1 FROM invoices
UPDATE docs_numbers
SET last_invoice = last_invoice + 1
最佳答案
用户。
引用:
http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1508205334476
正如他所建议的,您应该真正审查“无间隙”要求的必要性。
关于sql - 在 Oracle 中生成唯一和连续数字的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1986064/