社区
模式及实现
帖子详情
如何保护一段程序的事务完整性
jjj007
2005-08-08 09:26:58
有这样一段程序,要求一个事务的完整性:先从A数据库读出一条要完成的任务,然后在B数据库中执行,执行成功后将A数据库中的那条记录删掉。
如果在B数据库中执行完、删掉A数据库中的记录之前程序出了问题,那么可以说是事务不完整的,怎么办?
这个一个并发的程序。
...全文
267
8
打赏
收藏
如何保护一段程序的事务完整性
有这样一段程序,要求一个事务的完整性:先从A数据库读出一条要完成的任务,然后在B数据库中执行,执行成功后将A数据库中的那条记录删掉。 如果在B数据库中执行完、删掉A数据库中的记录之前程序出了问题,那么可以说是事务不完整的,怎么办? 这个一个并发的程序。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yameng
2005-08-18
打赏
举报
回复
看看这个人的说话的口气,知道了也不能告诉他。
yhbttfile
2005-08-12
打赏
举报
回复
兄弟,我想到两条路,供参考:
1、直接使用已有系统的功能。
如果你使用的两个数据库都在一个数据库系统上,就没有这样的问题。直接启动一个事务。
BEGIN TRAN
读A的记录;
插入A记录到B;
删除A的记录;
COMMIT
如果中途有一个操作失败,或者计算机断电等,启动后数据库会保证任何操作都会回滚。
2、自己实现。
——需要使用Gam4的模式。
操作方法都是人做的,人家那么强,你为什么不能那么强?
需要使用MEMENTO(备忘录模式)。把每个操作成功后都记录到事务文件(也成为日志文件)。
操作的过程设计成事务。
事务的设计思想跟数据库的事务类似。
为了更好地使用MEMENTO模式,建议结合COMMAND(命令模式)。
如果程序异常,启动的时候需要首先SCAN这个事务文件,如果发现只有启动事务,没有提交或者回滚事务,则UNDO所有的COMMAND。
这个思路应该实现不难,兄弟,自己做一下吧。
GOOD LUCK。
jixingzhong
2005-08-12
打赏
举报
回复
锁定进程,锁定对象 ...
这个在事务完整性中有很明确的说明的呀 !
jjj007
2005-08-09
打赏
举报
回复
你还知道银行用unix,你真行啊!你还知道哪用啊?孩子。
unix哪都用,还找个银行的,你真搞笑了!
wts_net
2005-08-08
打赏
举报
回复
让系统自己去做吧
你不用考虑
有人替你考虑好了啊
doway
2005-08-08
打赏
举报
回复
Windows 中 COM+ 是专门干这活的。
doway
2005-08-08
打赏
举报
回复
COM+ 中的 MTS 和 J2EE 容器都是扮演这个角色的中间件,但这都是后来的东西了,算是小辈儿。
大多数银行业务系统都是 UNIX 的,那时还没有后来这些小辈儿呢,你需要找个银行的人问一下。
jjj007
2005-08-08
打赏
举报
回复
不好意思哦,可能我没说清楚。
我要写一段程序(可能是C++)来完成这样的任务:先从A数据库读出一条要完成的任务,然后在B数据库中执行,执行成功后将A数据库中的那条记录删掉。要求事务(不是数据库事务)完整。
那么,如果在B数据库中执行完、删掉A数据库中的记录之前程序出了问题,那么可以说是事务不完整的,有可能导致后来的进程又重复执行了那条已经执行过的任务,怎么解决?
程序是Unix下并发的。
一次性搞定数据库
事务
第一部分:彻底明白
事务
的四个特性:原子性、一致性、隔离性、持久性,用场景和事例来讲解。 第二部分:实战讲数据库
事务
的6中并发异常:回滚丢失、覆盖丢失、脏读、幻读、不可重复读、MVCC精讲。 第...
【数据库系统原理】第六章 SQL语言之数据
完整性
、安全性、
事务
6.1 数据
完整性
、安全性、
事务
6.1.1
事务
及
完整性
约束
事务
定义: 由查询和更新语句的序列组成。SQL标准规定当一条SQL语句被执行,就隐式地开始了一个
事务
。
事务
的性质: 原子性 一致性 隔离性 持久性 ...
第五章——数据库
完整性
数据库的
完整性
(integrity)是指数据的正确性(correctness)和相容性(compat-ability) 数据的正确性是指数据是符合现实世界语义、反映当前实际状况的 数据的相容性是指数据库同一对象在不同关系表中的数据是符合逻辑的...
数据库的安全性、
完整性
、并发控制和恢复
数据库的安全性、
完整性
、并发控制和恢复...数据
保护
也为数据控制,主要包括数据库的安全性、
完整性
、并发控制和恢复。一、 数据库的安全性数据库的安全性是指
保护
数据库以防止不合法的使用所造成的数据泄露、更改或
Kafka
事务
是怎么实现的?Kafka
事务
消息原理详解(文末送书)
Kafka
事务
性消息是一项关键的功能,为确保数据一致性提供了重要的支持。在本部分,我们将深入了解Kafka
事务
性消息的基本概念。Kafka
事务
性消息的概念Kafka
事务
性...在某些应用
程序
中,消息的
完整性
和可靠性至关重要。
模式及实现
5,530
社区成员
4,169
社区内容
发帖
与我相关
我的任务
模式及实现
C/C++ 模式及实现
复制链接
扫一扫
分享
社区描述
C/C++ 模式及实现
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章