のOracleの増分シーケンスについて

1.増分シーケンスの作成と変更

- -のシーケンスを作成するための構文
 シーケンスSEQUENCE_NAMEを作成し、[をユーザー。]
    [N-INCREMENTによって]
    [N-で開始]
    | [N-MAXVALUE NOMAXVALUE]
    [| NOMINVALUEのn-MINVALUEを];
   
- -シーケンス文法変更
ALTERシーケンス[ユーザーを。】SEQUENCE_NAME
    N-INCREMENTによって[]
    [N-MAXVALUE | NOMAXVALUE]
    [N-MINVALUE | NOMINVALUE]

シーケンスパラメータ説明
INCREMENT BY:シーケンス番号との間の間隔を指定し、この値が正または負の整数であってもよいが、ゼロではありません。シーケンスを昇順。この句を省略した場合は、1のデフォルト値。
START WITH:最初の生成されたシーケンス番号を指定します。昇順の場合、シーケンスは、最小値よりも大きな値で開始することができる、最小値はデフォルト配列です。降順の値のために、配列は、最大の開始、シーケンスの最大既定値未満であってもよいです。
MAXVALUEは:生成された最大の順序を指定します。
NOMAXVALUE:1027指定された最大値を降順、最大上昇を指定-1。
MINVALUE:最小指定された順序。
NOMINVALUE:1の最小値は昇順です指定します。最小値を指定するには、降順は-1026です。

2.シーケンス

-サンプルテーブルを作成する-
表の学生を作成(
    。NULLでないstuId番号(9)、
    stuname VARCHAR2(20)NULLでない
    stuMsg VARCHAR2(50)はnull

 
  -系列Student_stuId_Seqを作成する-
 シーケンスStudent_stuId_Seq作成します
 。でINCREMENT 1
 。スタート1で
 1 MINVALUE
 MAXVALUE 999999999;
 
 -配列Student_stuId_Seq--変更
 ALTER配列Student_stuId_Seq
    2インクリメント 
    MINVALUE 1
    MAXVALUE 9999999と、
 
 -取得シーケンスインクリメントID -
 SELECT Student_stuId_Seq.Nextvalデュアルから"増分配列ID";
 
 -削除配列- -
 シーケンスStudent_stuId_Seqをドロップ;
 
 -呼び出し手順、データの学生を挿入します-
 学生(stuId、Stuname)に挿入する値(Student_stuId_Seq.Nextval、 ' ジョン・ドウ');
 学生に挿入(stuId、Stuname)の値(Student_stuId_Seq.Nextval、 ' ジョン・ドウ');
 -データクエリの挿入-
 SELECT *学生から

3.二つのフィールドのシーケンス

(1)NEXTVAL:NEXTVALシーケンスを取得する場合は、シーケンスの現在値を取得し、一度増分されます。

(2)currentval:currentvalシーケンスを取得すると、シーケンスの現在の値がインクリメントされません取得します。

おすすめ

転載: www.linuxidc.com/Linux/2019-08/160194.htm