DB2概念 触发器/事务/事务和存储过程
来源:互联网 发布:电信网络尖兵 编辑:程序博客网 时间:2024/05/12 01:34
触发器
又称“双稳态多谐振荡器”。触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由个事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 触发器可以从 DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。
触发器可以查询其他表,而且可以包含复杂的 SQL 语句。它们主要用于强制服从复杂的业务规则或要求。例如,您可以根据客户当前的帐户状态,控制是否允许插入新订单。
触发器也可用于强制引用完整性,以便在多个表中添加、更新或删除行时,保留在这些表之间所定义的关系。然而,强制引用完整性的最好方法是在相关表中定义主键和外键约束。如果使用数据库关系图,则可以在表之间创建关系以自动创建外键约束。
事务
事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。
例如:在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序。
事务是恢复和并发控制的基本单位。
事务应该具有4个属性:原子性、一致性、隔离性、持续性。这四个属性通常称为ACID特性。
原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。
一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。
事务和存储过程
这两个概念可以说是两个范畴的概念,事务是数据库操作范畴的概念,保证数据库数据的完整性和一致性;存储过程是高级程序设计中模块化设计思想的重要内容。
事务是包含一组修改(插入、更新和删除)的工作的逻辑单位。事务的操作要么被保存到数据库commit,要么回滚rollback,事务中的所有修改要么全部提交,要么什么也不做,这样保证了数据库中数据的完整性和一致性。
数据库操作中为了完成一个完整的数据库任务,从而引进高级程序的设计要素。过程就是高级程序设计语言中的模块概念,将一些内部联系的命令组成一个个过程,通过参数在过程间传递数据来完成一个完整的数据库任务,这就是模块化设计思想的重要内容。
有的时候可以把一个过程看作一个事务,但是有的过程运行过程中因为满足某些条件而从过程中跳出,这时就不能把过程看作事务;反之,一个事务可能是一个过程,也可能一个事务中包含对一个或多个过程的调用。
二者概念所述的范畴不同,在数据库中,是相互联系相互区别的;而且两者都是具体的,不是抽象的,因为都可以拿出一段代码,说它是事务或是存储过程。
以上是个人理解,希望对你有所帮助。
- DB2概念 触发器/事务/事务和存储过程
- 事务,触发器,存储过程
- 存储过程-触发器-事务
- 事务、存储过程和触发器和函数
- 游标,存储过程,触发器,事务
- 触发器 存储过程 事务 模板
- 表、触发器、事务、存储过程
- 数据库中的事务、存储过程和触发器的简单使用
- 事务和存储过程
- 存储过程和事务
- oracle中存储过程,存储函数,触发器,游标,索引,事务以及锁的概念,作用
- 触发器、游标、函数、存储过程、事务
- 触发器、游标、函数、存储过程、事务
- Mysql视图, 存储过程, 触发器, 事务
- MySQL 触发器、存储过程、事务简单示例
- 事务,游标,索引,视图,存储过程,触发器
- mysql事务、触发器、视图、存储过程、函数
- sql server 存储过程,触发器,事务
- JAVA发送Email
- CodeIgniter类库之Validation Class(续)
- 自动注册的工厂类(转贴CSDN)
- JAVA接收EMAIL
- HTTP 1.1状态代码及其含义
- DB2概念 触发器/事务/事务和存储过程
- 所有的表sqlserver
- ORACLE系统介绍
- 解题策略的谋划
- plus/sql 快速完成java所需要的buffer语句
- 系统理解Win32 API和MFC
- 80后的呻吟:我们这一代到底招谁惹谁了?
- DOM解析轻松入门(三)--.DOM Level 2 Tranversal 和Range
- SQL Server2005 与 SQL Server 2000并存