例如: 表 1: id name addr 1 zhangsan xxx 2 lisi xxx 3 wangwu xxx
将进行 delete 操作: delete from 表 1 where id=3; 数据库会进行什么操作?
是全表扫描一列一列的对比?生成的 binlog 会是什么样呢?
例如: 表 1: id name addr 1 zhangsan xxx 2 lisi xxx 3 wangwu xxx
将进行 delete 操作: delete from 表 1 where id=3; 数据库会进行什么操作?
是全表扫描一列一列的对比?生成的 binlog 会是什么样呢?
|
1
其实你没有设置主键,MySQL 内部也会维护一个跟主键类似的东西。
|
|
wdFeb 14, 2019 via iPhone
2
全表扫描 一行一行比
|
|
keepmovingbuddyFeb 14, 2019
3
用 explain 命令执行一下就知道数据库具体怎么执行你的命令了
|
|
msg7086Feb 14, 2019
7
已经定位到某一行了还比什么?直接删掉这行啊!
|
|
c4f36e5766583218Feb 22, 2019
8
@yaoweber 你不是写了 where id=3 ?(读取一行判断 id=3,删除,继续下一行
|