CREATE OR REPLACE TRIGGER VIETRESORTBL_INSERT_TRIGGER
BEFORE INSERT ON VIETRESORTBL
FOR EACH ROW
DECLARE
ZBH2 VARCHAR2(16);
I NUMBER;
L NUMBER;
BEGIN
L := LENGTH(:NEW.ZBH) ;
FOR I IN 1 .. L LOOP
ZBH2 := SUBSTRB(:NEW.ZBH,I,1);
IF ZBH2 NOT BETWEEN 'A' AND 'Z' THEN
raise_application_error(-20001,'编号每个字符必须是由大写"A"到"Z"的字符');
END IF;
END LOOP;
END;
/
BEFORE INSERT ON VIETRESORTBL
FOR EACH ROW
DECLARE
ZBH2 VARCHAR2(16);
I NUMBER;
L NUMBER;
BEGIN
L := LENGTH(:NEW.ZBH) ;
FOR I IN 1 .. L LOOP
ZBH2 := SUBSTRB(:NEW.ZBH,I,1);
IF ZBH2 NOT BETWEEN 'A' AND 'Z' THEN
raise_application_error(-20001,'编号每个字符必须是由大写"A"到"Z"的字符');
END IF;
END LOOP;
END;
/
BEFORE INSERT ON VIETRESORTBL
FOR EACH ROW
DECLARE
ZBH2 VARCHAR2(16);
I NUMBER:=1;
L NUMBER;
BEGIN
L := LENGTH(:NEW.ZBH) ;
FOR I in 1..L loop
ZBH2 := SUBSTRB(:NEW.ZBH,I,1);
IF ascII(ZBH2) <60 or ascii(zbh2)>90 then
raise_application_error(-20001,'编号每个字符必须是由大写"A"到"Z"的字符');
END IF;
end loop;
END;
/
create table t
(
c varchar2(100)
check (ltrim(c,'ABCDEFGHIJKLMNOPQRSTUVWXYZ') is null)
);