在pl / sql中创建一个触发器

时间:2011-03-09 16:30:55

标签: plsql

我有一个问题,我想创建一个检查Pincode号码的触发器 正好是六位数。或

请告诉我一个详细的答案。

1 个答案:

答案 0 :(得分:1)

我想你的意思是你问题中的一个字符列,如果是这样的话 - 你可以在没有触发器的情况下实现这一点,但是使用这样的检查约束:

create table test_1
(
pincode varchar2(20)
  constraint test_1$chk$id check (ltrim(pincode, '0123456789') is null and length(pincode)= 6)
);

运行这些插入:

insert into test_1 (pincode) values ('45sdgf65');
insert into test_1 (pincode) values ('4565');

会导致错误:

ORA-02290: check constraint (ANDREW.TEST_1$CHK$ID) violated

但是这个没问题:

insert into test_1 (pincode) values ('034565');