Oracleデータベースでは、IDの自己増加を実現する2つの方法があります.


Oracleデータベースでは、MySQLのようにIDの自己増加を設定するのは簡単ではありません.Oracleではシーケンスを設定する必要があります.
具体的には、次のようにします.
ステップ1:テーブルの作成
create table ContestDB
(
   TID  NUMBER(10) PRIMARY KEY,
   TEAMNUM varchar(50)  not null,
	 MARKNUM varchar(50)  
);

第2ステップ:ID自増を設定する
1つ目の方法:トリガを使用しない
CREATE SEQUENCE SEQ_TID;
INSERT INTO ContestDB VALUES(SEQ_TID.NEXTVAL,'B20007009','B001 ');
INSERT INTO ContestDB VALUES(SEQ_TID.NEXTVAL,'B20007010','B003 ');

2つ目の方法:Triggerトリガの使用
--       
 create sequence ContestDB_sequence  
       increment by 1 --      ,        1
       start with 1   -- 1    
       nomaxvalue      --      
       nocycle         --    ,   
       nocache        --     
--       		 
CREATE TRIGGER ContestDB_trigger
   BEFORE INSERT ON ContestDB
   FOR EACH ROW
   WHEN (new.TID is null) --   tid   ,        tid 
begin
   select ContestDB_sequence.nextval into :new.TID from sys.dual;
end;

insert into ContestDB(TEAMNUM,MARKNUM) values('A20007013','A002'); 

insert into ContestDB(TEAMNUM,MARKNUM) values('A20007014','A003'); 

知識を分かち合い、楽しみを分かち合います!もし間違いを発見したら、指摘してください.ありがとうございます.