社区
基础和管理
帖子详情
在C/S 或者MIDAS中,如何实现并发和锁定
nanhui
2003-03-02 01:15:22
如果有两个客户端同时对同一行数据进行修改操作,我如何控制只让首先执行的客户修改数据,而后面的客户报错!
我是直接采用SQL语句来修改数据的。
数据库采用的是Oracle,客户端开发工具用的是C++Builder
我曾经看过ORACLE的一点资料,知道有锁定这种用法(包括乐观、悲观等锁定)。请问我如何才能实现锁定。即当有某一个人在修改A数据表的第I行数据。这时不允许另一个用户操作这一行数据。
或者还有更好的方法来解决上述问题!!
谢谢各位了!!!
...全文
82
7
打赏
收藏
在C/S 或者MIDAS中,如何实现并发和锁定
如果有两个客户端同时对同一行数据进行修改操作,我如何控制只让首先执行的客户修改数据,而后面的客户报错! 我是直接采用SQL语句来修改数据的。 数据库采用的是Oracle,客户端开发工具用的是C++Builder 我曾经看过ORACLE的一点资料,知道有锁定这种用法(包括乐观、悲观等锁定)。请问我如何才能实现锁定。即当有某一个人在修改A数据表的第I行数据。这时不允许另一个用户操作这一行数据。 或者还有更好的方法来解决上述问题!! 谢谢各位了!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
piaohu
2003-06-19
打赏
举报
回复
正如jiezhi(西域浪子) 所说的:“那是办不到的”
其实完全可以这样做:(比较土)
你在提交更新数据的时候连同原来存在本地的
更新之前的数据一起上传
在数据更新的时候
首先比较原来的数据和数据库中相应的数据比较一下,
如果一样则允许更新
否则表明已经有另外的客户端更新了该数据
^-^
nanhui
2003-03-02
打赏
举报
回复
developer2002(开发者2002) :
那请问如何才能实现行级锁,进而自动引发阻塞。
nanhui
2003-03-02
打赏
举报
回复
midas中的TClientDataSet控件是将记录集取到本地操作
developer2002
2003-03-02
打赏
举报
回复
应该来说,oracle支持行级锁,系统会自动判断是否有两个或两个以上的事务对同一行进行操作,若有,会自动引发阻塞。但不清楚midas这类的控件是将记录集取到本地操作的?学习。。。
xiaosan_616
2003-03-02
打赏
举报
回复
可以在你的客户端使用c的锁,开发最好在数据库外实现同步,ORACLE有自带锁的机制,一般不用自己管。
nanhui
2003-03-02
打赏
举报
回复
developer2002(开发者2002) :
我刚才根据你跟我说的做了两个实验,但结果不太满意。
第一个实验是用sqlplus来同时修改两行数据,第一个sqlplus修改某一行数据,但未提交。这时这二个sqlplus也修改这一行数据,此时第二个sqlplus阻塞了(好像是死了)。然后第一个sqlplus提交数据,这时数据库中的数据发生变化了。
我的问题是:我如何把第二个sqlplus的阻塞解除??
第一个实验是用我的Client来同时修改两行数据,(服务器端的autocommit设置为false)第一个Client修改某一行数据,但未提交。这时这二个Client也修改这一行数据,此时第二个Client和服务器都阻塞了(好像是死了)。然后第一个Client提交数据,这时数据库中的数据**并没有变化**。
我的问题是:我如何把第二个Client及服务器的阻塞解除??要不然一旦发生这种情况那应该就是一种BUG了吧
jiezhi
2003-03-02
打赏
举报
回复
那是办不到的.
数据通常都是被取到本地,然后进行操作,完毕后再更新到数据库里面去.
你需要的就是写一些出错处理,比如提示:记录丢失,记录已经被其他用户修改等等.
midas
Civil 在桥梁结构分析
中
的应用
midas
Civil 在桥梁结构分析
中
的应用。 重点阐述如何运用
midas
Civil进行桥梁结构分析与设计。 教材
delphi c/s考勤系统
delphi开放的考勤管理系统,系统很简单,旨在掩饰开发c/s模式的方法。
midas
2ansys:从 code.google.comp
midas
2ansys 自动导出
midas
2ansys 从 code.google.com/p/
midas
2ansys 自动导出
GARCH-
MIDAS
、DDC-
MIDAS
模型MATLAB代码
2,4版 可以估计DCC-
MIDAS
adl-
MIDAS
DCC-GARCH
MIDAS
/GEN应用实例教程以及疑难解答(1-9)
本书充分考虑了结构设计师的特点,打破常规的程序手册的写作格式,尽量做到相关问题集
中
介绍,方便查阅,有助于结构工程师尽快掌握
MIDAS
/GEN程序
基础和管理
17,377
社区成员
95,127
社区内容
发帖
与我相关
我的任务
基础和管理
Oracle 基础和管理
复制链接
扫一扫
分享
社区描述
Oracle 基础和管理
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章