bloquear inserciones
una preguntita......quiero hacer un trigger que compruebe un dato y si ese dato es errado no permita hacer una insercion...pero no se como hago para que se bloquee la insercion me podrian ayudar???
set serveroutput on
create or replace trigger control_forma_pago
before insert on venta
for each row
begin
if :new.forma_pago='Contado' then
if nvl(:new.valor_entrada,0)!=0 OR nvl(:new.plazo,0)!=0 OR nvl(:new.valor_cuotas,0)!=0 then
dbms_output.put_line('Si es contado no se permiten valores en valor_entrada, plazo y valor_cuotas'); --aki kisiera bloquear la insercion
end if;
end if;
end control_forma_pago;
Ayudenme please!!!!!
set serveroutput on
create or replace trigger control_forma_pago
before insert on venta
for each row
begin
if :new.forma_pago='Contado' then
if nvl(:new.valor_entrada,0)!=0 OR nvl(:new.plazo,0)!=0 OR nvl(:new.valor_cuotas,0)!=0 then
dbms_output.put_line('Si es contado no se permiten valores en valor_entrada, plazo y valor_cuotas'); --aki kisiera bloquear la insercion
end if;
end if;
end control_forma_pago;
Ayudenme please!!!!!
Bueeeeeeno, me has caido simpatica, te re-escribo el trigger :
create or replace trigger control_forma_pago
before insert on venta
for each row
begin
if :new.forma_pago='Contado' then
if nvl(:new.valor_entrada,0)!=0 OR nvl(:new.plazo,0)!=0 OR nvl(:new.valor_cuotas,0)!=0 then
raise_application_error(-20001,'Si es contado no se permiten valores en valor_entrada, plazo y valor_cuotas'); --aki SE BLOQUEA la insercion
end if;
end if;
end control_forma_pago;
create or replace trigger control_forma_pago
before insert on venta
for each row
begin
if :new.forma_pago='Contado' then
if nvl(:new.valor_entrada,0)!=0 OR nvl(:new.plazo,0)!=0 OR nvl(:new.valor_cuotas,0)!=0 then
raise_application_error(-20001,'Si es contado no se permiten valores en valor_entrada, plazo y valor_cuotas'); --aki SE BLOQUEA la insercion
end if;
end if;
end control_forma_pago;
