永发信息网

asp.net中怎么处理并发操作?

答案:2  悬赏:80  手机版
解决时间 2021-03-10 18:47
假如三台机器“同时”(也就是不存在先后问题)操作一条数据(假如为更新),这个问题怎么处理?
最佳答案
C#有C#的处理同步异步的语法,数据库有数据库控制并发的锁。
而且这个问题并不是简单靠语法来解决的,要看你的设计。
全部回答
你的id不是自动增长的那种?如果不是那你就算一个表也得考虑并发啊 假定你用的是sql server如果你的id是自动增长的, 那使用 scope_identity() 来返回, 如下declare @newid intinsert into table_a (column1, column2) values(v1, v2)select @newid  = scope_identity()insert into table_b (idcolumn, column3, column4) values (@newid, v3, v4)select @newid  如果你的id不是这样的, 那你得用事务, 然后锁表了, 建议单开一个表用来存储最后一个id值。declare @newid intselect @newid = nextid from identity_log with (updlock) where tablename = 'table_a'insert into table_a ...insert into table_b ...update identity_log set nextid = @newid + 1 where tablename = 'table_a' 这段代码要运行在事务中, 推荐使用 sqltransaction 或 transactionscope当然也以把以上的sql改一下, 加个 begin tran, rollback tran, commit tran, 并正确使用 if(@@error <> 0)  
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我的学习成绩很好,但是体育很差,胆子也很小
关于苯海索的使用,下列说法正确的为A.与左旋
湖南省安化县清塘镇有申通快递吗
23.84+9.98,用简便方法计算
唯心主义总得来说是不是就是想干什么就干什么
为什么汗毛会很长
国外的拖拉机比赛拖拽的是什么重物
【足少阴肾经】足少阴肾经的腧穴有()。A.27个
自驾车保山到腾冲开车多长时间,听说高黎贡山
西游记读我不要整篇的读后感 我想要的是这个
刚装的飞歌开拓者3s导航,为什么放不了u盘里m
贷款邮政是什么意思
想买个外星人笔记本电脑 上网一查 直接迷糊了
When I was a young teacher,I had to
惠普打印机6500a不出纸是齿轮坏还是连杆坏
推荐资讯
视博苑地址有知道的么?有点事想过去
中国建筑材料发展趋势
求诗经里海誓山盟的句子
出版物市场信息包括生产信息、发行信息、需求
阳光小区南区1期(西门)地址在什么地方,想过
形容性格平和稳重的词语
芝麻信用换号码忘记登陆密码怎么办
事故调查组应当自事故发生之日起()日内提交
我刚刚开始学车。教练只让用离合和刹车控制车
天唯广告这个地址在什么地方,我要处理点事
许岑ppt用的是哪款软件?
李白与谁齐名
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?