说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

谁能拿出一个好的策略(关于ORACLE中的TRIGGER问题)

编辑:说三道四文库 发布时间:2017-12-17 08:11
HTML文档下载 WORD文档下载 PDF文档下载
我有表table_a(row_id,plan_flg,status_flg,par_row_id)自关联
             ~~~~                   ~~~~~~
                ∧                          ‖
                ‖__________________________‖

其中:row_id(PK)  varchar2(16)
      plan_flg   char(1)/'p':primary,'a':act(调整)
      status_flg  char(1)/'0','1'     
      par_row_id(原row_id)  varchar2(16)

示例数据:
row_id,plan_flg,status_flg,par_row_id 
   1 ,  p     ,   0      ,  null
   2 ,  p     ,   0      ,  null
   3 ,   a     ,   0      ,   1
   4 ,   a     ,   0      ,   1
   
 ~~~~~~~~~~~~~~~~   
             ‖
           ∨

   1 ,  p     ,   1      ,  null
   2 ,  p     ,   0      ,  null
   3 ,   a     ,   1      ,   1
   4 ,   a     ,   1      ,   1
 


要求:
  1、当plan_plg为'p'的记录的status_flg 从'0'变成'1'时 ,将表中
所有par_row_id为当前记录row_id 的记录的status_flg更新为'1'
  2、尽量不使用临时表和JOB


create trigger atrigger 
    after update of status_flg 
    on table_a 
    for each row 
    when (status_flg='1')
  update table_a set status_flg=1 where par_row_id=:new.row_id
when 字句应该是
    when (new.status_flg='1')
可是ORACLE中,在触发器内是禁止对变化表进行UPDATE的,
大虾,救命啊...
你说的不错.
实现比较麻烦,先建一个Package,定义一些全局变量,
然后在表上建立一个语句级触发器,和一个行级触发器。
因为ORACLE中对行级触发器的限制不允许修改变化表,但是对语句级触发器没有限制。
所以在行级触发器中将需要修改的东西存储在Package的变量中,在语句级触发器中读取,
然后修改变化表。
thanks,试试先
噢,在ORACLE中,这种情况是被严格禁止的,还是省省力气用JOB吧
昨天我想了一下,可能要对你的表结构进行小的修改,语句如下:
alter table yourtable add column flag number(1) default 0;
当你将status_flg从0改为1时同时也将flag的值修为1.即
update yourtable set status_flg=1,flag=1
更新时使用
update yourtable set status_flg=1 where flag=1;和
update yourtable set flag=0;
采用helios(太阳神) 的建议:
   在语句级触发器中,update table_a set other_field ='$#' where ...,是可以的;
                                      ~~~~~~~~~~~~~~~~~~ 
但是,update table_a set status_flg ='1' where ...就不行了。
                        ~~~~~~~~~~~~~~~~
因为我的行级触发器when (old.status_flg ='2' and new.status_flg ='3'),大家再帮我
想想办法吧,再20分
when (old.status_flg ='0' and new.status_flg ='1')
我也是常碰到变化表的问题,解决方法是写个procedure,然后在做完每个Insert命令后,再条用
这个procedure,别的实在没什么好方法。
谢谢诸位
mouseup(fn)-JQuery API one(type,data,fn)-JQuery API ready(fn)-JQuery API resize(fn)-JQuery API scroll(fn)-JQuery API select(fn)-JQuery API select()-JQuery API submit(fn)-JQuery API submit()-JQuery API toggle(even,odd)-JQuery API trigger(type)-JQuery API unbind(type,fn)-JQuery API unload(fn)-JQuery API Effects特效-JQuery API animate-JQuery API fadeIn(speed, callback)-JQuery API fadeOut(speed,callback)-JQuery API fadeTo(speed,opacity,callback)-JQuery API hide(speed,callback)-JQuery API hide()-JQuery API show(speed,callback)-JQuery API show()-JQuery API slideDown(speed,callback)-JQuery API slideToggle(speed,callback)-JQuery API slideUp(speed, callback)-JQuery API toggle()-JQuery API Javascript-JQuery API $.browser-JQuery API $.each(obj, fn)-JQuery API $.extend(target,prop1,propN)-JQuery API $.grep(array,fn,inv)-JQuery API 要调用某个DLL中函数,应如何申明? 有问题急? jb8中类找不到了??? 哪位可以告诉我在哪里可以改动网论坛首页上方的banner广告的路径? 救命啊!!为什么在DBASE4里执行“ALTER TABLE TableName ADD COLUMN AAA C(10)”发生异常?!,该语句不兼容啊! 如果当初你没遇到Java,你会选择什么 欢迎参加微软新闻组 & Diyinside Windows User Group离线技术沙龙 访问access数据库怎么不能查日期? Dll问题! 这个异常是什么回事? 小小问题。。。 為深麼我的Wizard模式的PreportyPage的OnWizardNext函數實現後,不能出現第二個頁面,how to. 那一个有的高程模拟试题 简单问题,请指点 在线等待求助:win2000缠人问题 ****郁闷,从来没有遇到这样的问题!!!为什么报表显示的时候会闪一下!而且显示出来后其窗体还没有自动关闭!******** 请大家发表一下自己的意见 问一个消息? 欢迎参加微软新闻组 & Diyinside Windows User Group离线技术沙龙 求助:chart使用Lineseries颜色问题 ?在C#的如何运用线程 关于安装Websphere Portal的问题。希望大家帮我解决一下。 非法字符的问题 转让一优派PT813 21寸显示器(适合专业作图) 北京 一个小问题,还请多帮忙!谢谢!! 怎么用命令看到一个进程的内存数? 用VC怎样获知当前Window是否支持某国语言(如中文)? 投诉: 有关通用查询组件—— 视图选择公式的问题,请帮帮我! 请教一小问题? DataSet.AcceptChanges()这个有什么用呀??? 欢迎参加微软新闻组 & Diyinside Windows User Group离线技术沙龙 ?怎样在ASPX的WEB服务中运用C#的线程 在2003下用Interdev 串口通信的问题 紧急50分 在 vb.net 中,如何读取 xml 文件? 斑竹地进来! 欢迎参加微软新闻组 & Diyinside Windows User Group离线技术沙龙 新装的WIN2000,关了启动程序,占内存近100M,还老出怪问题 连编以后,出现的错误,求解 我有一个外来控件(条形码),请问该如何用代码在图片框中动态添加一控件?? 系统设计师就要开考了,请考过高程和就要考高程全部看过来~~~~ 欢迎参加微软新闻组 & Diyinside Windows User Group离线技术沙龙 如何把一组CLASS文件打成一个JAR的包 谁用过solid数据库阿,可知里面怎莫用视图阿??紧急! 求求大哥们了 怎样动态改变控件的属性? 明天要去九城面试,有知道内情的吗,给说说,无限感激,, 大家帮忙看看!我有记个问题一直困扰我!(送分的问题(可以加100分啊),不够可加啊!都是送分题,来者都有分) 英语翻译1.全世界的人们都知道长城.2.这条河上的新桥是去年建造的.3.这些信已经寄出去了么?4.所有的练习都要做完么?5.孩子们正在浇花园里的花.6.这些照片是在长城上照的. 第一个下面有一个笑点很奇怪? 这是哪国的字?又是啥意思? 英语翻译现在进行时的! "情圣" 英语怎么翻译? 情圣用英语怎么表达 情圣的英文怎么写Sacredlove 和 sacrdelove 情圣英文怎么说 史记中最短的故事是哪个? 史记中最短的小故事 中篇幅最短的是哪几篇 日本首相出访土耳其 欲游说其勿购中国日本拟上调育儿休假补贴发放比例 增加奥巴马医保网站再次瘫痪 众院将举行听美国一醉酒男子被捕后拿总统奥巴马为自澳洲农民呼吁设“全澳产”通道 为本地今秋首次暴风强势登陆法国 数万户家庭统计显示韩国火葬率为74% 比20年美国一男子为取啤酒冒险重返失火房屋险德国政界对美监听默克尔愤怒 欲传唤斯报告称全美国一年有500名少年儿童死韩国反导系统正式开建 被指应避免刺激澳总理阿博特会见范长龙国之交在于民相亲王冠中会见泰国客人中方就推动以巴停火同有关各方保持密切深圳罗湖闹市水泥屋檐垮塌 避雨者3死习近平谈18年三访巴西印象美联邦快递被控运送非法出售药品 或挨美参议员提议民航加装反导雷达 媒体指如果是导弹 那一瞬会发生什么?深圳夫妇开窗被大风卷走2000元 只韩国“岁月”号沉船再发现遗体小人物的空间尸与灵的世界邪之天歌异能年代祭传奇道士修仙传恋碍综合症和修罗场韩娱之完美邻居调春淡出江湖网游之副职至高寰冥玫瑰花园旅游南黄古道旅游巴图湾旅游牛心山旅游新疆古生态园旅游紫鹊界梯田旅游南京云锦博物馆旅游紫禁城角楼旅游崇福寺旅游府文庙旅游伊斯兰教圣墓旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘