`
wenqiang06ky
  • 浏览: 71736 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

关于触发器操作本表

阅读更多
--在触发器里面是不允许操作本表的,解决办法增加自制事务
CREATE OR REPLACE TRIGGER PRM_OWNER_USER.TP_TRIGGER BEFORE DELETE OR INSERT ON PRM_OWNER_USER.TP 
REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROWDECLARE PRAGMA AUTONOMOUS_TRANSACTION; 
[size=large]--这里BEGIN IF (INSERTING) THEN UPDATE TP SET X = X + 1; 
ELSE UPDATE TP SET X = X - 1; 
--但是这里也是有问题的,delete x=2的数据,这里将x再-1会产生资源争用的。
--delete语句先将x=2的数据锁定,update再来update就会报错。 END IF;END;[/size]
1
1
分享到:
评论
2 楼 yw123456 2011-09-02  
也可以用oracle中动态SQL语句啊。
1 楼 courage207 2011-09-02  
 

相关推荐

    Oracle触发器修改自身表

    1、行级触发器不支持 update 、select 、delete 对自身表的操作。 2、表级触发器 不支持 :new 和 :old对象 所以想要触发器对自身表数据做修该,则用行级触发器得到 :new 和 :old对象中的相关数据,然后将这样的数据...

    触发器生成数据库表操作日志

    【触发器生成数据库表操作日志】是一种技术手段,用于记录数据库中特定数据表的DML(数据操作语言)变化,如INSERT、DELETE和UPDATE操作。这种做法在数据库管理中非常常见,尤其对于审计和追踪数据变更历史至关重要...

    用触发器生成数据库表的数据操作日志

    在本例中,触发器主要关注INSERT操作,但原理同样适用于DELETE和UPDATE。 3. 日志记录: 通过触发器,可以记录每次对表的操作详情,包括操作类型、受影响的表名、改动的时间以及具体更改的数据。这有助于跟踪和...

    利用 Oracle 系统触发器防止误删除表操作

    ### 利用Oracle系统触发器防止误删除表操作 #### 背景介绍 在企业级应用中,数据库的安全性和稳定性至关重要。Oracle作为一款广泛使用的数据库管理系统,提供了丰富的功能来保障数据安全。其中,系统触发器是Oracle...

    sql server触发器中自动生成的临时表

    触发器操作情况 当我们对某张表建立 SQL Server 触发器后,分三种情况讨论: 1. 插入操作(Insert) 在插入操作中,Inserted 表有数据,Deleted 表无数据。例如,在 table1 中插入一条新记录,则Inserted 表中将...

    多表操作之触发器

    本文将深入探讨“多表操作之触发器”的概念、作用及其在实际场景中的应用,特别是针对给定内容中的案例分析,以期提供全面而深入的理解。 ### 多表操作触发器概述 触发器是一种存储过程,由数据库管理系统(DBMS)...

    mysql触发器之创建多个触发器操作实例分析

    本文实例讲述了mysql触发器之创建多个触发器操作。分享给大家供大家参考,具体如下: 这次记录的内容mysql 版本必须得是5.7.2+的哈,之前的会不好使的。废话不多说,咱们开始正文哈。 在mysql 5.7.2+版本之前,我们...

    SQL Server 利用触发器对多表视图进行更新的实现方法

    - 示例中通过`INSERT INTO`语句向`XINXIN_TAB`和`FENSHU_TAB`插入数据,确保了各个表中有数据可供触发器操作。 6. **视图与多表更新**: - 虽然未直接提及视图,但视图可以结合触发器用于实现多表操作。视图是...

    目录1.D触发器:2.D触发器功能表如下:3.功能表解析:4.同步D触发器解析:5.复位置数D触发器电路图:

    在本篇中,我们将详细探讨D触发器的各个方面,包括其功能表、解析、同步设计以及带有复位功能的实现。 1. D触发器: D触发器的主要特点是其输出Q的更新只发生在时钟脉冲的上升沿(或下降沿,取决于设计)。在给定的...

    触发器触发器触发器触发器

    在本主题中,我们将深入探讨触发器的原理、类型、用法以及在实际数据库操作中的应用。 触发器通常用于实现数据的完整性约束,这些约束可能超出了标准的 PRIMARY KEY、FOREIGN KEY 和 UNIQUE 约束的范围。例如,当一...

    sqlserver 创建触发器 远程服务器相应执行SQL语句

    这个触发器在远程服务器上监听`TestSms`表的`INSERT`操作,并将数据通过`openrowset()`函数插入到远程服务器的表`TestMess`中。 注意:如果远程服务器上的表包含自增列,那么需要取消其自增特性或者通过其他方法...

    mysql触发器之触发器的增删改查操作示例

    MySQL触发器是数据库管理系统提供的一种机制,用于在特定的数据操作(如INSERT、UPDATE、DELETE)发生之前或之后自动执行预定义的SQL语句。这些触发器可以用来实现复杂的业务规则,确保数据的一致性和完整性,或者...

    基于触发器和控制表的数据库同步系统

    【基于触发器和控制表的数据库同步系统】是一种利用编程技术实现的数据库间数据实时或定期更新的解决方案,尤其在多数据中心或者分布式环境中有广泛应用。本系统由Java语言开发,专注于MySQL数据库之间的表数据同步...

    使用SQL Server触发器实现数据表的级联更新.pdf

    "使用SQL Server触发器实现数据表的级联更新" SQL Server触发器是数据库中的一种机制,用于实现数据的级联更新。触发器可以被看作是一种特殊的存储过程,可以在数据库事件的触发下执行复杂的SQL语句,从而实现比...

    Oracle触发器备份表数据

    触发器是一种存储过程,它与表或视图关联,并在对这些对象执行特定类型的数据库操作(如INSERT、UPDATE、DELETE)时自动执行。触发器可以在数据修改前或后执行,这为实现复杂业务逻辑提供了强大的支持。 #### 如何...

    触发器代码

    这是触发器的代码,希望需要的同学能有所获益,帮助大家

    数据操作触发器实例详解

    数据操作触发器是数据库管理系统中的一种重要特性,它允许在数据表上定义特定的数据操作(如INSERT、UPDATE、DELETE)发生时自动执行的程序逻辑。触发器可以视为一种响应特定事件的存储过程,它们在幕后运行,确保...

    子表+触发器实现数据同步

    本示例通过使用子表和触发器来实现表A与表B之间的数据插入同步,以达到实时更新的效果。以下是对这个机制的详细解释: 1. **子表(CHILD表)**: 子表CHILD是用于存储表A和表B之间同步信息的中间表。它有四个字段...

    触发器创建与管理实验 .docx

    例如,在插入数据之前,Tproduct_bf_insert 触发器将插入操作信息和时间记录到 operate 表中。在更新数据时,Tproduct_af_update 触发器将更新操作信息和时间记录到 operate 表中。在删除数据时,Tproduct_af_del ...

    oracle练习题关于触发器的作业

    本篇文章将深入探讨Oracle中的触发器及其在实际问题解决中的应用。 首先,触发器是一种数据库对象,它在特定的数据库操作(如INSERT、UPDATE或DELETE)发生时自动执行。触发器可以看作是存储过程的一种特殊形式,当...

Global site tag (gtag.js) - Google Analytics