Oracle sequence 的 order/noorder 选项

系统 1566 0
以前建序列时从来没注意过这个选项,总是认为序列就一定是有序的,今天被人问道才注意了一下。原来是在 Oracle 并行服务器上用到的,我理解是不是在并行情况下,如果序列是noorder的,则取序列号时,先发出命令的实例不一定能取到大的序列。在决大多数情况下是用不到的。

CREATE SEQUENCE command

PURPOSE:
    To create a sequence . A sequence is a database object from which
    multiple users may generate unique integers. You can use sequences
    to automatically generate primary key values.

SYNTAX:

CREATE SEQUENCE [schema.] sequence
    [INCREMENT BY integer]
    [START WITH integer]
    [MAXVALUE integer | NOMAXVALUE]
    [MINVALUE integer | NOMINVALUE]
    [CYCLE | NOCYCLE]
    [CACHE integer | NOCACHE]
    [ ORDER | NOORDER]

where:

schema
    is the schema to contain the sequence . If you omit schema, Oracle
    creates the sequence in your own schema.

sequence
    is the name of the sequence to be created.

INCREMENT BY
    specifies the interval between sequence numbers. This value can be
    any positive or negative Oracle integer, but it cannot be 0. If
    this value is negative, then the sequence descends. If the
    increment is positive, then the sequence ascends. If you omit this
    clause, the interval defaults to 1.

MINVALUE
    specifies the sequence 's minimum value.

NOMINVALUE
    specifies a minimum value of 1 for an ascending sequence or -10
    for a descending sequence .

    The default is NOMINVALUE.

MAXVALUE
    specifies the maximum value the sequence can generate.

NOMAXVALUE
    specifies a maximum value of 10
    for a descending sequence .

The default is NOMAXVALUE.

START WITH
    specifies the first sequence number to be generated. You can use
    this option to start an ascending sequence at a value greater than
    its minimum or to start a descending sequence at a value less than
    its maximum. For ascending sequences, the default value is the
    sequence 's minimum value. For descending sequences, the default
    value is the sequence 's maximum value.

CYCLE
    specifies that the sequence continues to generate values after
    reaching either its maximum or minimum value. After an ascending
    sequence reaches its maximum value, it generates its minimum value.
    After a descending sequence reaches its minimum, it generates its
    maximum.

NOCYCLE
    specifies that the sequence cannot generate more values after
    reaching its maximum or minimum value.

    The default is NOCYCLE.

CACHE
    specifies how many values of the sequence Oracle preallocates and
    keeps in memory for faster access. The minimum value for this
    parameter is 2. For sequences that cycle, this value must be less
    than the number of values in the cycle.

NOCACHE
    specifies that values of the sequence are not preallocated.

    If you omit both the CACHE parameter and the NOCACHE option, Oracle
    caches 20 sequence numbers by default. However, if you are using
    Oracle with the Parallel Server option in parallel mode and you
    specify the ORDER option, sequence values are never cached,
    regardless of whether you specify the CACHE parameter or the NOCACHE
    option.

ORDER
    guarantees that sequence numbers are generated in order of request.
    You may want to use this option if you are using the sequence
    numbers as timestamps. Guaranteeing order is usually not important
    for sequences used to generate primary keys.

NOORDER
    does not guarantee sequence numbers are generated in order of
    request.

    If you omit both the ORDER and NOORDER options, Oracle chooses
    NOORDER by default. Note that the ORDER option is only necessary to
    guarantee ordered generation if you are using Oracle with the
    Parallel Server option in parallel mode. If you are using exclusive
    mode, sequence numbers are always generated in order .

PREREQUISITES:
    To create a sequence in your own schema, you must have CREATE
    SEQUENCE privilege.

    To create a sequence in another user's schema, you must have CREATE
    ANY SEQUENCE privilege. If you are using Trusted Oracle in DBMS MAC
    mode, your DBMS label must dominate the creation label of the owner
    of the schema to contain the sequence .

Oracle sequence 的 order/noorder 选项


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论