alter table tab1 modify colname check colname in ('1','A', 'B','4','Z','6','a')大概这样子
你在定义表结构的时候,加约束条件就ok。比方: create table samp( empNo varchar2(20), empName varchar2(20) CHECK(empName in ('1','A',...,'a')), ...... );或者你是定义了一个表结构,想在修改字段的约束条件的话,比方: alter table samp modify(empName varchar2(20) constraint consCheck1 check (empName in ('1'...)));你也当然可以做成触发器来检验它, create or replace insTrig before insert on empName of samp for each row declare str varchar2(20), ... begin if inserting then elsif :new.empName not in ('1',...,'a') then ...... else dbms_output.put_line("......"); end if; end instrig; /
2.用insert触发器来校验,有字符不在此范围时raise一个exception.
check colname in ('1','A', 'B','4','Z','6','a')大概这样子
create table samp(
empNo varchar2(20),
empName varchar2(20) CHECK(empName in ('1','A',...,'a')),
......
);或者你是定义了一个表结构,想在修改字段的约束条件的话,比方:
alter table samp modify(empName varchar2(20) constraint consCheck1 check (empName
in ('1'...)));你也当然可以做成触发器来检验它,
create or replace insTrig
before insert on empName of samp
for each row
declare
str varchar2(20),
...
begin
if inserting then
elsif :new.empName not in ('1',...,'a') then
......
else
dbms_output.put_line("......");
end if;
end instrig;
/