ホームページ >データベース >Oracle >Oracleでシーケンスを追加する方法

Oracleでシーケンスを追加する方法

WBOY
WBOYオリジナル
2022-05-31 15:17:1911986ブラウズ

Oracle では、CREATE SEQUENCE ステートメントを使用してシーケンスを追加できます。構文は、「CREATE SEQUENCE [user.]sequence_name [シーケンス番号間の間隔] [最初のシーケンス番号] [生成可能な最大値] です。 ] [シーケンスの最小値]"。

Oracleでシーケンスを追加する方法

このチュートリアルの動作環境: Windows 10 システム、Oracle バージョン 12c、Dell G3 コンピューター。

Oracle でシーケンスを追加する方法

CREATE SEQUENCE [user.]sequence_name 序列号之间的间隔 第一个序列号 可生成的最大值 序列的最小值

シーケンスは、一意の整数を生成するために使用できるデータベース オブジェクトです。シーケンスは通常、プライマリ コード値を自動的に生成するために使用されます。シーケンスの値は特別な Oracle プログラムによって自動的に生成されるため、シーケンスはアプリケーション層でのシーケンスの実装によって引き起こされるパフォーマンスのボトルネックを回避します。

Oracle シーケンスでは、複数のシーケンス番号を同時に生成でき、各シーケンス番号は一意です。シーケンス番号が生成されると、シーケンスはトランザクションのコミットまたはロールバックとは無関係にインクリメントされます。句を指定せずにデフォルトのシーケンスを設計できます。このシーケンスは、1 から始まり 1 ずつ増加する昇順シーケンスであり、上限はありません。

1) シーケンスコマンドの作成

    CREATE SEQUENCE [user.]sequence_name
    [increment by n]
    [start with n]
    [maxvalue n | nomaxvalue]
    [minvalue n | nominvalue];

INCREMENT BY: シーケンス番号の間隔を指定します。値は正または負の整数にすることができますが、 0 にすることはできません。シーケンスは昇順です。この句を省略した場合、デフォルト値は 1 です。

開始文字列: 生成される最初のシリアル番号を指定します。昇順では、シーケンスは最小値より大きい値で開始でき、デフォルト値はシーケンスの最小値です。降順の場合、シーケンスは最大値より小さい値で開始でき、デフォルト値はシーケンスの最大値です。

MAXVALUE: シーケンスによって生成できる最大値を指定します。

NOMAXVALUE: 最大値を昇順の場合は 1027、降順の場合は -1 として指定します。

MINVALUE: シーケンスの最小値を指定します。

NOMINVALUE: 昇順の最小値を 1 として指定します。降順には最小値 -1026 を指定します。

2) シーケンス変更コマンド

    ALTERSEQUENCE [user.]sequence_name
    [INCREMENT BY n]
    [MAXVALUE n| NOMAXVALUE ]
    [MINVALUE n | NOMINVALUE];

シーケンスを変更するには:

1) 将来のシーケンス値の増分を変更します。

2) 最小値または最大値を設定または解除します。

3) バッファシーケンスの数を変更します。

4) シーケンス番号が正しいかどうかを指定します。

5) シーケンス削除コマンド

拡張知識:

1. 同じグループに増分シーケンス番号を追加します

構文形式:

row_number() over(partition by 分组列 order by 排序列 desc)

2. 同じシリアル番号を同じグループに追加します

Oracleでシーケンスを追加する方法

select id, dzid, dense_rank() over(order by dzid) 序号结果 from z_test;

推奨チュートリアル: "Oracle Video Tutorial"

以上がOracleでシーケンスを追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。