-- 建立表 BONUS_BENCHMARK_VALUE --------------------------------------------------------------- declare num number; begin select count(1) into num from user_tables where TABLE_NAME = upper('BONUS_BENCHMARK_VALUE'); if num>0 then execute immediate 'drop table BONUS_BENCHMARK_VALUE'; end if; end; / -- ---------------------------- -- Table structure for BONUS_BENCHMARK_VALUE -- ---------------------------- CREATE TABLE BONUS_BENCHMARK_VALUE ( "BENCHMK_ID" NUMBER NOT NULL , "BENCHMK_YEAR" NVARCHAR2(20) NOT NULL , "BENCHMK_CODE" NVARCHAR2(20) NOT NULL , "BENCHMK_VALUE" NVARCHAR2(20) NULL , "MEASUREMENT" NVARCHAR2(20) NULL , "REFERENCE_START" NVARCHAR2(20) NULL , "REFERENCE_END" NVARCHAR2(20) NULL , "BENCHMK_TYPE" NVARCHAR2(50) NULL ) LOGGING NOCOMPRESS NOCACHE ;
-- 建立序列,產生自增數值 -- seq_BONUS_BENCHMARK_VALUE 序列名稱 create sequence seq_BONUS_BENCHMARK_VALUE start with 1 increment by 1; -- 建立觸發器,在插入數據前,把自增數值賦值給主鍵 -- seq_BONUS_BENCHMARK_VALUE 序列名稱 -- BENCHMK_ID 主鍵id create or replace trigger TRIGGER_BONUS_BENCHMARK_VALUE before insert on BONUS_BENCHMARK_VALUE for each row begin select seq_BONUS_BENCHMARK_VALUE.nextval into :new.BENCHMK_ID from dual; end ;