问答详情
源自:2-4 [Oracle] 触发器应用四

行级触发器执行多个语句时的语句格式

谢谢老师的精彩讲解。 有个问题:就是在执行行级触发器语句时 还希望能在sqlplus屏幕上打印相关信息时 是在then后接着执行:dbms_output.put_line('成功插入'||:new.empId);么?是的话,如何拼接? 谢谢大家帮着分析哈

提问者:甩到没朋友 2017-06-19 17:33

个回答

  • 迎风破浪
    2017-07-31 08:59:54

    set serveroutput on

    create or replace trigger xxx

    before

    update

    on emp

    for each row

    begin

       update backups set sal=:new.sal where empno=:new.empno;

       dbms_output.put_line('成功备份:'||:new.empno||'的工资'||:new.sal||'元');

    end;

    /

    update emp set sal=sal+10;

    commit;

    select * from emp;

    select * from backups;

    成功备份:7369的工资1549.88元

    成功备份:7499的工资2949.95元

    成功备份:7521的工资2511.49元

    成功备份:7566的工资5629.44元

    成功备份:7654的工资2511.49元

    成功备份:7698的工资5385.86元

    成功备份:7782的工资4606.37元

    成功备份:7839的工资9575.59元

    成功备份:7844的工资3047.4元

    成功备份:7900的工资1868.42元

    成功备份:7902的工资5678.15元

    成功备份:7934的工资2618.66元

    成功备份:8000的工资1546.88元