我正在使用oracle第一次,並且我有一個名爲ExpenseReport的表,用於存儲有關費用的詳細信息。ORACLE約束允許爲空值,如果
我想允許空值的ApprUserNo IF ERStatus =「PENDING」 任何幫助將不勝感激,我一直在想這一切上午
CREATE TABLE ExpenseReport
(
ERNo NUMBER(10) NOT NULL,
ERDesc VARCHAR2(255) NOT NULL,
ERSubmitDate DATE NOT NULL,
ERStatusDate DATE NOT NULL,
ERStatus VARCHAR2(8) DEFAULT 'PENDING' NOT NULL,
SubmitUserNo NUMBER(10) NOT NULL,
ApprUserNo NUMBER(10) NOT NULL CONSTRAINT BEN_Check CHECK (ERStatus LIKE('PENDING')),
UsersUserNo NUMBER(10) NOT NULL,
AssetAssetNo NUMBER(10) NOT NULL,
PRIMARY KEY (ERNo),
CONSTRAINT Check_ER_Date CHECK (ERStatusDate >= ERSubmitDate),
CONSTRAINT ERStatus_Null_Exception CHECK (IF ERStatus = 'PENDING',AppUserNo = NULLABLE),
CONSTRAINT ERStatus_Option CHECK (ERStatus = 'PENDING','APPROBED','DENIED')
)
什麼問題了嗎? – 2012-04-04 10:23:30
我需要ApprUserNo纔可以爲空只有當ERStatus ='Pending' – 2012-04-04 10:30:01
我在嘗試執行此操作時遇到錯誤。 – 2012-04-04 10:30:27