暂无图片
mysql数据库update操作的疑问
我来答
分享
小北
2024-10-04
mysql数据库update操作的疑问

mysql数据库update操作的疑问

对于update不更新主键并且非原地update的情况下,先删除掉旧记录,再插入新记录。

更新主键的情况则是的事务提交前,对旧记录只做一个delete mark操作,在事务提交后才由专门的线程做purge操作,把它加入到垃圾链表中。

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
virvle

当Oracle表被重命名后,原表上的执行计划不会自动失效。但是,如果你在重命名后的表上创建了新的索引或者修改了表结构,那么原来的执行计划可能会跑偏。

如果原表上已经固化了执行计划,那么在重命名后的表上执行相同的SQL语句时,Oracle会尝试使用原来的执行计划。然而,由于表名已经改变,Oracle可能无法找到原来的执行计划,因此需要重新生成执行计划。在这种情况下,新的执行计划可能会与原来的执行计划有所不同,从而导致性能下降。

为了避免这种情况,建议在重命名表后,更新所有相关的存储过程、触发器和视图,以便它们引用新的表名。同时,可以考虑重新编译那些依赖于该表的PL/SQL代码,以确保它们能够正确地使用新的表名。

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交