数据库事务操作会锁住table表吗

相遇是万里挑一 2016-07-06 03:00:59
某一个table在事物里做新增操作,这个事务没有commit()之前,在别的地方还能对这个table进行修改操作吗?
...全文
2260 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
oylp1988 2016-07-07
  • 打赏
  • 举报
回复
引用 4楼唐诗三百首 的回复:
在别的地方还能对这个table进行修改操作吗? --> 不一定, 当需修改的数据行所在的数据页被锁定时无法修改. 当需修改的数据行所在的数据页不被锁定时可以修改.
也有可能锁在行上吧
唐诗三百首 2016-07-06
  • 打赏
  • 举报
回复
在别的地方还能对这个table进行修改操作吗? --> 不一定, 当需修改的数据行所在的数据页被锁定时无法修改. 当需修改的数据行所在的数据页不被锁定时可以修改.
薛定谔的DBA 2016-07-06
  • 打赏
  • 举报
回复
不能操作,甚至无法查询,但如果用聚集索引查询,还是有可以的。 插入时会有意向排它锁,和很多锁都冲突。可以看看锁兼容性: 锁兼容性(数据库引擎)
Mr_Nice 2016-07-06
  • 打赏
  • 举报
回复
引用 楼主 qq_15159897 的回复:
某一个table在事物里做新增操作,这个事务没有commit()之前,在别的地方还能对这个table进行修改操作吗?
补充一下,需要看你的隔离级别设的是哪种. 参考 https://msdn.microsoft.com/zh-cn/library/ms172001(v=sql.100).aspx
Mr_Nice 2016-07-06
  • 打赏
  • 举报
回复
没有commit 之前,无法修改,需要等待提交后,才能修改.

590

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧