各位在工作中,经常有哪些场景会使用到触发器?

zsdsywr123 2016-07-03 11:33:09
如题,希望不要出现类似于去百度之类的回复。

...全文
171 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xie_zhr 2019-11-08
  • 打赏
  • 举报
回复
1,更新一张表的同时需要更新另一张表数据 2,可以限制更新某张表的某些字段
super wheat 2019-11-06
  • 打赏
  • 举报
回复
引用 3 楼 jiana839353733 的回复:
有两个表,一个表插入记录,另一个表需要update吧。比如书中看到简单的,你存200元,交易表要插入记录,金额表也要更新总金额。
那为何不在代码中同步更新金额表呢?非要放到触发器中执行,还不好维护。
zsdsywr123 2016-07-05
  • 打赏
  • 举报
回复
引用 1 楼 wmxcn2000 的回复:
在 11g(含) 之前,如果你要实现一个自增开,就要用一个 sequence + trigger 来实现;
引用 2 楼 ghx287524027 的回复:
create or replace

      trigger is tri_update[/insert/delete/UID]_tableName

             before[after]  insert[update/delete/or 。。。] on  tableName

      [for each row]--这个一般都要加上,因为我们一般都是行级触发器,即对每一行都操作

      declare

         locateParamater1 type;

        locateParamater1 type;]

      begin

        --do something;

      end;
如上是定义触发器的基本模板,从上面的定义中应该可以看出触发器应用的一般场景
引用 3 楼 jiana839353733 的回复:
有两个表,一个表插入记录,另一个表需要update吧。比如书中看到简单的,你存200元,交易表要插入记录,金额表也要更新总金额。
谢谢指教
jiana839353733 2016-07-04
  • 打赏
  • 举报
回复
有两个表,一个表插入记录,另一个表需要update吧。比如书中看到简单的,你存200元,交易表要插入记录,金额表也要更新总金额。
ghx287524027 2016-07-04
  • 打赏
  • 举报
回复
create or replace

      trigger is tri_update[/insert/delete/UID]_tableName

             before[after]  insert[update/delete/or 。。。] on  tableName

      [for each row]--这个一般都要加上,因为我们一般都是行级触发器,即对每一行都操作

      declare

         locateParamater1 type;

        locateParamater1 type;]

      begin

        --do something;

      end;
如上是定义触发器的基本模板,从上面的定义中应该可以看出触发器应用的一般场景
卖水果的net 2016-07-04
  • 打赏
  • 举报
回复
在 11g(含) 之前,如果你要实现一个自增开,就要用一个 sequence + trigger 来实现;

17,090

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧