2004-12-06
_ Oracleで連番を生成する
MySQLやDB2だとIDなどシーケンシャルな連番を自動でふることが可能ですが,Oracleの場合はちょっと違うらしい.順序(SEQUENCE)オブジェクトを作成して,そのオブジェクトを参照して連番をふるという形になる.そのため,insert文も通常とは多少ことなる.
--ORACLEで連番を生成するサンプル --サンプルテーブルの作成 create table TB_SAMPLE ( ID int primary key, TESTDATA char(30) ); --順序(SEQUENCE)オブジェクトの作成 --no_seq:順序の名前(任意) --start with:順序の開始番号 --incremental by:増加量 --maxvalue:最大値 --cycle:順序の値をメモリ上にいくつcacheするか create SEQUENCE no_seq start with 1 increment by 1 maxvalue 99999 cycle nocache; --行挿入時のSQL文 insert into TB_SAMPLE values(no_seq.nextval, 'テストデータ');
これで連番を生成することが可能です.