社区
C#
帖子详情
多用户由DataSet更新数据库时的一个问题
Acesailor
2004-12-06 04:42:53
表名:UserList
主键:UserName
多用户同时操作该表,而各用户在DataSet中连续插入多条或修改多条记录,我的意思就是新增或修改的记录出现相同的UserName,更新数据库时,如何正确检查出相同的UserName?异常处理呢?(总不能保存前DataSet中UserName与数据库检查一次吧)
...全文
189
7
打赏
收藏
多用户由DataSet更新数据库时的一个问题
表名:UserList 主键:UserName 多用户同时操作该表,而各用户在DataSet中连续插入多条或修改多条记录,我的意思就是新增或修改的记录出现相同的UserName,更新数据库时,如何正确检查出相同的UserName?异常处理呢?(总不能保存前DataSet中UserName与数据库检查一次吧)
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cancerser
2004-12-07
打赏
举报
回复
事物的并发可以考虑加锁(数据库就有)
数据库本身就能考虑到完整性的约束,相同名的插入 数据库会先执行一个,然后在判断主键是不是冲突,冲突会给后进来的一个错误提示。
更新呢 就考虑加个写锁吧~
peterlanhaijun
2004-12-07
打赏
举报
回复
其实多用户对数据的操作也没有绝对的同步进行,总有个先后,数据库的设计本身对这种情况就考虑到。
如果是新增了相同(主键相同)数据那么先被数据库接受的操作会成功,紧跟其后的操作就会失败,你可以做成提示。
如果是修改了相同数据那你可以在table中设置一列lock(每一次操作成功就++)值和datetime值(记录操作时间),你可以判断datetime值是否接近用户的当前操作时间,是就提示。
我刚做的系统就是这样处理的,暂时还没有出现什么问题。在这里提出来供各位兄弟姐妹参考!
thinkingforever
2004-12-07
打赏
举报
回复
在更新到数据库时判断一下有没有重复的UserName
ddggggdd
2004-12-07
打赏
举报
回复
同意 windinwing,其实质就是并发的相关问题
windinwing
2004-12-06
打赏
举报
回复
1.UserName在数据库里设成主键
2.DataSet里插入用户的时候判段有无重复记录没有在插入
3.如果有多个用户访问不同的DataSet可以设置成单体模式,只有一个DataSet
Acesailor
2004-12-06
打赏
举报
回复
我问的是多个用户一起提交时会出现的情况啊
nchen123
2004-12-06
打赏
举报
回复
批量更新放在一个事务中进行即可。
C#
数据库
编程从入门到精通
1. ADO.NET:它是.NET Framework提供的
一个
数据访问组件,用于连接、查询和管理各种
数据库
。主要包括
DataSet
、DataTable、DataRow、Connection、Command、DataAdapter等对象。 2. SqlConnection:用于创建到SQL ...
计算机外文文献翻译(asp.net)
例如,当
一个
连接(Connection)读取
数据库
中1000行记录
时
,如果一次性加载到内存,会消耗资源。相比之下,DataReader是一种向前只读的数据流,它可以高效地按需逐行读取数据,从而减少内存占用。这种方式适用于需要...
.net文献 英文原文+中文翻译(1万字)
它不直接连接到
数据库
,而是通过DataAdapter从
数据库
加载数据,并在需要
时
更新
数据。
DataSet
支持关系和多表操作,以及数据的验证和约束。 3. DataAdapter和Command对象:DataAdapter是
数据库
和
DataSet
之间的桥梁,...
使用
DataSet
Datatable
更新
数据库
的三种实现方法
使用
DataSet
Datatable
更新
数据库
的三种实现方法,包括CommandBuilder 方法、DataAdapter
更新
数据源以及使用sql语句
更新
一、自动生成命令的条件 CommandBuilder 方法 a)动态指定 SelectCommand 属性 b)利用 ...
C#使用
DataSet
Datatable
更新
数据库
的三种实现方法
本文以实例形式讲述了使用
DataSet
Datatable
更新
数据库
的三种实现方法,包括CommandBuilder 方法、DataAdapter
更新
数据源以及使用sql语句
更新
。分享给大家供大家参考之用。具体方法如下: 一、自动生成命令的...
C#
111,093
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章