简体   繁体   English

如何在oracle中添加检查约束

[英]how to add check constraint in oracle

I have a table,我有一张桌子,

create table a(
id_a number(5) not null, 
name varchar2(15) not null, 
address varchar2(30), 
phone varchar2(15), 
constraint pk_a primary key (id_a)
);

I want add constraint check at phone.我想在电话上添加约束检查。 example.例子。 phone is 08175210868电话是 08175210868

I want to only be input with +628175210868我只想输入 +628175210868

sorry my bad english.对不起,我的英语不好。

Try to add a row-level trigger尝试添加行级触发器

CREATE OR REPLACE TRIGGER VALIDATE_PHONE 
BEFORE INSERT OR UPDATE OF PHONE ON A 
REFERENCING OLD AS OLD NEW AS NEW 
FOR EACH ROW 
DECLARE
    ex_phone       EXCEPTION;
BEGIN
  IF :NEW.PHONE not like '+62%' THEN raise ex_phone; END IF;
END;

你可以试试下面的

alter table b add constraint phone check (phone like '+62%');

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM