融海咨询informix_4gl教材第二十七章4GL中的事务.doc_第1页
融海咨询informix_4gl教材第二十七章4GL中的事务.doc_第2页
融海咨询informix_4gl教材第二十七章4GL中的事务.doc_第3页
融海咨询informix_4gl教材第二十七章4GL中的事务.doc_第4页
融海咨询informix_4gl教材第二十七章4GL中的事务.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二十七章INFORMIX-4GL中的事务本章主要介绍事务,具体内容列在上图中。什么是事务事务是作为一组执行的动作,若其中某一动作失败则其它所有动作必须重作。事务一般有开始和结束。数据库服务器监视事务,若完成则提交到磁盘;若失败,则恢复事务开始前的状态。如银行事务从你的存款帐户往支票帐户划款就是个很好的例子。事务中包括的动作有:l l 修改存款显示提取额l l 修改支票,显示余额在划转完成前这两个动作必须都成功。若任一动作有误,事务就失败。例如,你试图把一笔钱从存款帐户转到支票帐户。若划拨没完成,帐户应同划转前一样保持平衡。事务日志硬、软件失效都会导致事务失败。数据库服务器必须能跟踪事务中的所有变化,这由事务日志来完成。服务器用事务日志记录事务中对数据库做的所有改变。若由于某种原因事务失败,服务器自动用事务日志中的数据恢复这些改变。数所库并不是自动带日志的,由数据据库管理员决定是否创建带日志的数据库。若数据库无日志,则事务无效。注意对于INSERT、UPDATE和DELETE语句,特别是在OLTP环境中最好带事务。指定事务用SQL语句来指定事务边界。BEGIN WORK语句说明事务开始,COMMIT WORK语句说明事务结束。当数据库服务器接到COMMIT WORK语句,则认为所有修改完成,并提交到磁盘。若由于外部原因导致事务未完成,在系统重启时会回滚事务。ANSI数据库对于ANSI数据库,就不需要用BEGIN WORK语句说明事务开始,而是一直处于事务中,只需要用COMMIT WORK说明事务结束。ROLLBACK WORK有些情况下,可能希望放弃某一事务,这时要用ROLLBACK WORK语句。ROLLBACK WORK语句使数据库服务器放弃当前事务,并恢复刚才的改变。在上图例子的代码中,在事务提交前若tran_flag设为ba

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论