zoukankan      html  css  js  c++  java
  • 关于Sequence中的Order选项 【基础】

    DB2 官方文档中并没有对此选项做出很好的解释,我们看看Oracle的这个选项:

    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. 

    注意这行

        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. 


    我们可以看出这个选项是对于并行系统而已确保sequence的in order,如果是单机sequence都是in order的。

  • 相关阅读:
    opencv-活体检测
    人脸识别
    Opencv-python基本操作
    白话深度学习与Tensorflow(二)
    Linux系统入门(一)-未完成
    编程题29 题目:求对角线元素之和
    编程题28 题目 排序
    编程题27 题目:求100之内的素数
    编程题 18兵乓球比赛
    编程题21 求阶数总和
  • 原文地址:https://www.cnblogs.com/jackhub/p/3147213.html
Copyright © 2011-2022 走看看