+ -
当前位置:首页 → 问答吧 → 求触发消息的代码

求触发消息的代码

时间:2011-09-19

来源:互联网

我 想在表A 的删除触发器里面 
实现 如果 日期>8 
 就不能删除表数据
并让前台提示错误
为 8日之后不能在删除数据

作者: HW_2X_VC   发布时间: 2011-09-19

SQL code

create table tab_test
(
    ddatetime    date
);

insert into tab_test values(sysdate);
commit;

create or replace trigger trg_test
  before delete on tab_test  
  for each row
declare
  -- local variables here
begin
    if (to_char(sysdate,'dd') > '08') then
        RAISE_APPLICATION_ERROR(-20000, '8号以后不允许删除数据.');
    end if;
end trg_test;
/


begin
    delete from tab_test;
exception
    when others then
        dbms_output.put_line(sqlerrm);
end;
/

ORA-20000: 8号以后不允许删除数据.
ORA-06512: at "MMSRPT.TRG_TEST", line 5
ORA-04088: error during execution of trigger 'MMSRPT.TRG_TEST'

作者: opps_zhou   发布时间: 2011-09-19

SQL>create table test_trg ( id number,name varchar2(20));
SQL>create sequence seq_test;
SQL>create or replace trigger bi_test_trg
Before insert or update of id on test_trg for each row
Begin
  If inserting then
  Select seq_test.nextval into :new.id from dual;
  Else 
  Raise_application_error ( -20020,’不允许更新id’值);
End;
/

作者: BearFishShow   发布时间: 2011-09-19

热门下载

更多