如何利用触发器更新本表的数据?

scarecrow81 2005-07-15 04:17:10
比如我触发器所在的表中添加了一条纪录,然后判断这条纪录的某个字段满足一定条件,比如(b>10),如果不满足,就不让这条纪录添加到表中,或者是添加进去了,在把这条记录删掉?谢谢啦!
...全文
184 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
china2001ok 2005-07-16
  • 打赏
  • 举报
回复
study
scarecrow81 2005-07-15
  • 打赏
  • 举报
回复
如何用check?

to karin3() :用抛出异常的方法是可以实现。有没有其它不抛出异常的方法?

谢谢啦

karin3 2005-07-15
  • 打赏
  • 举报
回复
create or replace trigger onlypositive
before update of b
on t_baihe
for each row
begin
if new.num_col>10 then
raise_application_error('');
end if
end onlypositive;
/
guangli_zhang 2005-07-15
  • 打赏
  • 举报
回复
还是用check吧
bzszp 2005-07-15
  • 打赏
  • 举报
回复
加check 不行?

或者 通过行触发器 将 不满足条件的 数据的主键 保存在临时表里面
然后在 表级 触发器 里面 删掉。

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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