update table t set t.flag = 1 where flag != 1 and id = 1
多线程, 高并发执行这句SQL, 会不会出现有两个以上的线程执行成功 ?即返回的修改行数都为1。
求DB大神指点。
begin transa....
update table t set t.flag = 1 where flag != 1 and id = 1
commit transa.....
都有这样简单的事务的,事务里就这一句update。
SQL并发执行问题
答案:2 悬赏:60
解决时间 2021-02-02 10:34
- 提问者网友:久伴不朽
- 2021-02-01 10:56
最佳答案
- 二级知识专家网友:邪性洒脱
- 2021-02-01 11:51
sql server数据库的话
更新的时候会有事务锁,多个事务不会产生冲突。
就是说对于同一行记录,第一个事务执行成功,第二个事务就不会再次更新了。
更新的时候会有事务锁,多个事务不会产生冲突。
就是说对于同一行记录,第一个事务执行成功,第二个事务就不会再次更新了。
全部回答
- 1楼网友:随心随缘不随便
- 2021-02-01 12:16
比较笨的方法3个job相同时间,自动执行!
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯