我的要求是该列accno
没有空值并且没有重复。name 列没有空值,只接受 A 到 Z(没有其他类似的数字或 * $)。列acctype
是一个只允许 ('S', 'C','R') 的字符,并且该balance
列没有空值。如果acctype
是 S 那么余额应该 >= 5000,当 C 余额应该 > 10000 并且当它是 R >= 5000 时。
我正在尝试将此应用于:
create table kcb_acc_tab
(accno varchar2(20)
constraint kcb_acc_Pk
primary key,
name varchar2(20)
constraint kcb_name_NN
Not null
constraint kcb_name_CK
check((name =upper(name)) and (name like '[(A-Z)]')),
Acctype char
constraint kcb_acctype_ck
check (acctype in('S' ,'C' ,'R')) ,
Doo timestamp
default sysdate ,
bal number(7,2) kcb_bal_NN
constraint kcb_bal_ck
check((aacctype ='S' and bal >=5000) or
(acctype = 'C' and bal >=10000) or
(acctype ='R' and bal >=5000));