| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 220 人关注过本帖
标题:请问记录缓冲或表缓冲,能处理同时新插入数据的冲突吗
取消只看楼主 加入收藏
kofan
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2025-7-27
收藏
 问题点数:0 回复次数:2 
请问记录缓冲或表缓冲,能处理同时新插入数据的冲突吗
如题,
搜索更多相关主题的帖子: 数据 缓冲 插入 同时 冲突 
4 天前 17:52
kofan
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2025-7-27
收藏
得分:0 
以下是引用yiyanxiyin在2025-8-19 10:05:21的发言:

新增数据分两步, 第一步新增的数据放缓冲区, 第二部提交数据
缓冲有两种模式:保守模式和开放模式, 保守模式在提交数据的时候不会锁定数据, 提交时会锁定(单条提交锁定时间很短, 批量提交根据数量锁定时间会延长), 如果多人同时提交那么会冲突, 第一个人锁定了数据, 后面的人会因为数据被锁提交失败(新增时是主键或唯一索引被锁),开放模式不会加锁, 但可能会引起唯一索引冲突而失败

所以能不能解决冲突,要怎么解决冲突, 看你的具体业务逻辑


你好。谢谢你的解答。红色部分是不是写错了。
我想继续问一下。
调用cursorsetpro函数开启缓冲,是只需在表单init事件里执行一次?
还是我每次要修改数据时开启(比如编辑按钮的click事件中,开启缓冲)。然后在保存按钮的click事件中关闭缓冲?
3 天前 11:09
kofan
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2025-7-27
收藏
得分:0 
以下是引用easyppt在2025-8-19 08:24:28的发言:

这个话题涉及的面有点广,相关技术点有:
1、主键设置
2、事务处理
3、更新冲突
    大部分都是由系统自动处理,以最后编辑的为准
    选项1:比如A和B同时编辑,A提交后,B也提交,则以B为准。认为这是正常的。不会处理冲突,
    选项2:如果A在编辑状态,任何人不可以编辑,那就要用时间戳,自己控制,比较繁琐,我的应用还没这么高级,所以选项2从来不用。
    大部分人都是选择选项1+事务,不会选择2这种

表缓冲新增行如果你担心重复录入的冲突,那没必要,这是管理上的问题,比如,一个订单总不至于A员工新增操作后,然后B员工也新增操作吧。
职责分工+权限,都知道...



谢谢。在更新冲突上,我肯定不会选择选项2。 我看示例中,有让用户选择是否覆盖别人的修改。
表缓冲新增冲突,主要是主键ID,容易造成索引不唯一。
可能我想太复杂了。还是谁最后提交,以谁为准。这个简单。

[此贴子已经被作者于2025-8-19 11:23编辑过]

3 天前 11:11
快速回复:请问记录缓冲或表缓冲,能处理同时新插入数据的冲突吗
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017806 second(s), 11 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved