如何在数据库中用好Transaction?
2006-06-23 00:00
302 查看
如何在数据库中用好Transaction?
在ASP的实际操作中,总会发生这样的情况,如在银行,从我的帐户往费文华的帐户划款,
我的帐户显示已经划出,但因银行的系统出现故障,导致费文华帐户的数据库更改失败,
这应该怎样处理呢?我帐户的金额应该没有损失吧?
你的利益当然没有损失,已经更改的帐户数据库资料会自动恢复。
这里用到的就是互动功能(TRANSACTION),它是由IIS与MTS(Mircrosoft Transaction Server)
共同完成的。它的功能就是:当ASP程序中所有的数据库的更改都成功时,才算成功;如果其中有一
个数据库更改失败,则其它业已更改的数据库记录都将自动恢复。
SQL SERVER和ORACLE数据库都提供了互动功能,但ACCESS没有提供。
这种互动功能作用于一个ASP程序的范围,就是说,凡是涉及到这个程序的所有的数据库都有互动功能。
方法是在ASP程序的第一行加上:
TRANSACTION=Required
以告诉IIS本程序要使用互动的功能,具体ASP程序:
< %@ TRANSACTION=Required LANGUAGE="VBScript"% >
……
< % Set obj1 = Server.CreateObject("testobj.cls1")% >
< % = obj1.data3t(1,10)% >
< %
Sub OnTransactionCommit()
……
End Sub
Sub OnTransactionAbort()
……
End Sub
% >
在ASP的实际操作中,总会发生这样的情况,如在银行,从我的帐户往费文华的帐户划款,
我的帐户显示已经划出,但因银行的系统出现故障,导致费文华帐户的数据库更改失败,
这应该怎样处理呢?我帐户的金额应该没有损失吧?
你的利益当然没有损失,已经更改的帐户数据库资料会自动恢复。
这里用到的就是互动功能(TRANSACTION),它是由IIS与MTS(Mircrosoft Transaction Server)
共同完成的。它的功能就是:当ASP程序中所有的数据库的更改都成功时,才算成功;如果其中有一
个数据库更改失败,则其它业已更改的数据库记录都将自动恢复。
SQL SERVER和ORACLE数据库都提供了互动功能,但ACCESS没有提供。
这种互动功能作用于一个ASP程序的范围,就是说,凡是涉及到这个程序的所有的数据库都有互动功能。
方法是在ASP程序的第一行加上:
TRANSACTION=Required
以告诉IIS本程序要使用互动的功能,具体ASP程序:
< %@ TRANSACTION=Required LANGUAGE="VBScript"% >
……
< % Set obj1 = Server.CreateObject("testobj.cls1")% >
< % = obj1.data3t(1,10)% >
< %
Sub OnTransactionCommit()
……
End Sub
Sub OnTransactionAbort()
……
End Sub
% >
相关文章推荐
- 如何在数据库中用好Transaction?
- JAVA中如何用TRANSACTION来对数据库进行一系列的操作
- 学习掌握重点:如何学好C++,用好类库很重要
- 如何修复数据库状态(转载)
- Java 如何连接数据库SQL sever2008
- 只有*.mdf 如何附加数据库到MSSQL
- 如何学好C++,用好类库很重要
- 如何备份数据库文件?
- 如何迁移数据库到另一个分区
- Android 如何导入已有的外部数据库
- Genexus 如何实现获得数据库表中的最大值及多用户的控制(z)
- Hibernate 是如何管理数据库表的关联关系的
- 如何实现数据库的优化?
- 如何优化数据库查询
- noarchive 数据库current redo log 损坏,没有备份如何应对
- 如何在SharePoint管理中心检查数据库架构版本、修补级别和修补程序的常规监控
- sql serve如何定期自动备份数据库?
- 数据库sql如何查询某个字段只含有数字和字母或者是汉字
- 请问,superset如何链接带有SSH通道的数据库?
- 如何查找Oracle数据库service_name、及可访问数据库的用户名密码