ホームページ  >  記事  >  データベース  >  シーケンスとトリガーを使用して Oracle で ID 自動インクリメントを実装する方法 (コード例)

シーケンスとトリガーを使用して Oracle で ID 自動インクリメントを実装する方法 (コード例)

不言
不言転載
2019-01-30 09:53:543553ブラウズ

この記事は、Oracle で ID 自動インクリメントを実装するためのシーケンスとトリガーを使用する方法 (コード例) についてのものです。必要な方は参考にしていただければ幸いです。役に立ちました。

Oracle には、データベースを設計する際に、SQL Server のような主キーとして ID を自動的に割り当てる機能がありません。現時点では、Oracle は「シーケンス」と「シーケンス」によって ID を自動的に増やす機能を実現できます。 「トリガー」。

1.シーケンス シーケンスの作成

create sequence seq_uid
  increment by 1   
  start with 1    
  nomaxvalue    
  nocycle   
  cache 10 ;

ここで: 「seq_uid」はカスタム シーケンス名を表します。

「start with 1」はシーケンスの値が 1 から始まることを意味し、「increment by 1」はシーケンスの値が 1 ずつ増加することを意味します。

シーケンスの使用方法:

select seq_uid.nextval ID from dual

この方法で、シーケンスの次の値を取得します。 SQL Server の ID 自動インクリメントと同様の機能を実現できます。

2

.トリガー Trigger の作成

create trigger tri_uid before insert on [tablename] for each row when (new.[columnname] is null)
begin
    select seq_uid.nextval into:new.[columnname] from dual;
end;

ここで: "tri_uid" は self を意味します定義されたトリガー名;

"seq_uid" は使用されるシーケンス名を表します。

"[columnname]" は自動インクリメントされる列を表します。 ]" は、自動インクリメントされる列が配置されているデータ テーブルを示します。

以上がシーケンスとトリガーを使用して Oracle で ID 自動インクリメントを実装する方法 (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。