2012-07-19 23 views
0

對於Oracle專家來說,這應該是一個簡單的問題。 我有一個柱,(例如ID號(10)和I用Oracle序列以產生下一個 值根據該:。http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_6015.htm 一個序列可生成的28位的最大值,我想知道什麼 是什麼時候發生了足夠的序列已達到上述列的大小,並在序列定義中我指定CYCLE但 我沒有指定MAXVALUE。Oracle是否以智能方式處理此問題,並從 開始還是必須指定否則Oracle將繼續生成大於上述ID列中可以存儲的數字的 ?Oracle序列MaxValue

回答

5

There在序列和ID列之間沒有關係 - 完全可能有一個序列用於爲多個不同的表生成密鑰。這意味着該序列不知道如何聲明ID列。如果您未指定MAXVALUE,該序列將愉快地繼續生成高達10^27的數字。

如果你想,當它擊中10^11,而不是10^27的順序循環,你需要指定一個MAXVALUE的10^11 - 1。