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共享问题有知道
3766浏览 • 1回复 待解决
mysql 索引问题有知道
3580浏览 • 1回复 待解决
Mysql怎么添加外键有知道
3008浏览 • 1回复 待解决
mysql主从同步问题有知道
3717浏览 • 1回复 待解决
请教一个mysql问题有知道
3432浏览 • 1回复 待解决
mysql替换字符串问题有知道
4409浏览 • 1回复 待解决
WebView层级问题有知道
6650浏览 • 1回复 待解决
依赖包冲突有知道
3886浏览 • 1回复 待解决
AES 加密问题,有知道
1402浏览 • 1回复 待解决
mqtt协议使用有知道
3893浏览 • 1回复 待解决
mysql 关联查询问题有没有知道
3456浏览 • 1回复 待解决
创建json文件问题有知道
4264浏览 • 1回复 待解决
如何设置屏幕亮度有知道
2906浏览 • 1回复 待解决
关于图片组件问题有知道
2148浏览 • 1回复 待解决
Ubuntu terminal切换问题有知道
3299浏览 • 1回复 待解决
开发调试问题有知道
3297浏览 • 1回复 待解决
centos 6 安装 postgresql有知道?
3444浏览 • 1回复 待解决
鸿蒙怎么接收广播有知道
13347浏览 • 1回复 待解决
ets组件定位问题有知道?
4068浏览 • 1回复 待解决
如何安装OceanBase有知道
4227浏览 • 1回复 待解决
obproxy路由问题有知道
5704浏览 • 2回复 待解决