MySQL中innodb的锁有知道的吗?

请问innodb引擎中,当使用update或者insert或者delete语句时,如果没有声明事务的话,数据库会给影响的行加锁么?具体机制是怎么样的?


mysql
innodb
2023-06-25 12:58:35
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
大娘送面粉

innodb中不存在你说的情况。可见​​官方文档​​说明:

In InnoDB, all user activity occurs inside a transaction.

也就是说,在innodb中,你的语句肯定在事务中。可分为如下几种情况:

  1. 显示声明事务: begin or start transaction

当显示的声明事务就会隐式的关闭了自动提交,参见​​官方文档​

  1. 未显示声明事务 & set autocommit=1 : 每一条sql就会是一个事务。
  2. 未显示声明事务 & set autocommit=0 : 连接中的事务总是处于打开状态,当commit或者rollback时事务完成并开启一个新事务。
分享
微博
QQ
微信
回复
2023-06-25 14:59:20
相关问题
mysql共享问题有知道
467浏览 • 1回复 待解决
mysql 索引问题有知道
860浏览 • 1回复 待解决
mysql主从同步问题有知道
1098浏览 • 1回复 待解决
Mysql怎么添加外键有知道
409浏览 • 1回复 待解决
mysql替换字符串问题有知道
1501浏览 • 1回复 待解决
请教一个mysql问题有知道
883浏览 • 1回复 待解决
mqtt协议使用有知道
668浏览 • 1回复 待解决
innodb,空列会占用存储
955浏览 • 1回复 待解决
依赖包冲突有知道
661浏览 • 1回复 待解决
WebView层级问题有知道
3416浏览 • 1回复 待解决
请问imanaer问题有知道
1044浏览 • 0回复 待解决
ohos:remote问题有知道
2485浏览 • 1回复 待解决
SQL解析问题有知道
1291浏览 • 1回复 待解决
obproxy路由问题有知道
2750浏览 • 2回复 待解决
api网关推荐有知道
534浏览 • 1回复 待解决
如何安装OceanBase有知道
1405浏览 • 1回复 待解决
创建json文件问题有知道
1172浏览 • 1回复 待解决
Ubuntu terminal切换问题有知道
448浏览 • 1回复 待解决
如何设置屏幕亮度有知道
220浏览 • 1回复 待解决
开发调试问题有知道
453浏览 • 1回复 待解决
鸿蒙怎么接收广播有知道
8803浏览 • 1回复 待解决