CREATE TABLE IN ORACLE
DROP TABLE IXU_TRANSACTION_HISTORY;
CREATE TABLE IXU_TRANSACTION_HISTORY (
ID number(10) NOT NULL,
TCBSID varchar2(20),
ROLE varchar2(20),
AWARD_TYPE varchar2(20),
ACTION varchar2(20),
REFERENCE_ID number(10),
REFERENCE_LOCATION varchar2(50),
CAMPAIGN_ID number(5),
POINT number(20,2),
OUTSTANDING number(20,2),
ISSUED_DATE DATE,
EXPIRED_DATE DATE,
CREATED_DATE timestamp,
UPDATED_DATE timestamp,
DESCRIPTION nvarchar2(1000),
CHECKSUM varchar2(100),
HISTORY_KEY varchar2(100),
SOURCE varchar2(100),
CONSTRAINT PK_IXU_TRANSACTION_HISTORY PRIMARY KEY (ID)
);
-- Generate ID using sequence and trigger
CREATE SEQUENCE IXU_TRANSACTION_HISTORY_SEQ START WITH 1 INCREMENT BY 1;
CREATE OR REPLACE TRIGGER IXU_TRANSACTION_HISTORY_SEQ_TR
BEFORE INSERT ON IXU_TRANSACTION_HISTORY FOR EACH ROW
WHEN (NEW.ID IS NULL)
BEGIN
SELECT IXU_TRANSACTION_HISTORY_SEQ.NEXTVAL INTO :NEW.ID FROM DUAL;
END;
CREATE TABLE IXU_TRANSACTION_HISTORY (
ID number(10) NOT NULL,
TCBSID varchar2(20),
ROLE varchar2(20),
AWARD_TYPE varchar2(20),
ACTION varchar2(20),
REFERENCE_ID number(10),
REFERENCE_LOCATION varchar2(50),
CAMPAIGN_ID number(5),
POINT number(20,2),
OUTSTANDING number(20,2),
ISSUED_DATE DATE,
EXPIRED_DATE DATE,
CREATED_DATE timestamp,
UPDATED_DATE timestamp,
DESCRIPTION nvarchar2(1000),
CHECKSUM varchar2(100),
HISTORY_KEY varchar2(100),
SOURCE varchar2(100),
CONSTRAINT PK_IXU_TRANSACTION_HISTORY PRIMARY KEY (ID)
);
-- Generate ID using sequence and trigger
CREATE SEQUENCE IXU_TRANSACTION_HISTORY_SEQ START WITH 1 INCREMENT BY 1;
CREATE OR REPLACE TRIGGER IXU_TRANSACTION_HISTORY_SEQ_TR
BEFORE INSERT ON IXU_TRANSACTION_HISTORY FOR EACH ROW
WHEN (NEW.ID IS NULL)
BEGIN
SELECT IXU_TRANSACTION_HISTORY_SEQ.NEXTVAL INTO :NEW.ID FROM DUAL;
END;
Comments
Post a Comment