java - jpql删除查询很长时间以来一直处于活动状态
问题描述
jpql 删除查询在过去 4 小时内处于活动状态。当我尝试直接在数据库控制台上执行相同的查询时,执行大约需要 30 秒。要删除的总数据最多为 100000。我在 id 上有索引。我无法理解。任何建议,将不胜感激。谢谢
@Modifying
@Query("DELETE FROM IoEntity WHERE Id = :id")
void deleteAllById(@Param("id") UUID id);
解决方案
每当您使用 Toad、SQL Developer 等 SQL 客户端在数据库中运行 DML 时,请确保您提交它,除非在客户端中打开了自动提交。
如果您通过 JPA 进行删除,当您在服务方法中定义 @Transactional 时,Spring 将负责提交。
推荐阅读
- node.js - 我的表格没有正确地走路线
- javascript - 如何在Javascript中运行一次函数?
- php - 在 laravel 中下载文件时找不到文件错误
- r - 如何对观察结果运行白噪声和自回归模型(1)
- python - 想使用 python 将我存在于 csv 中的数据相乘
- typescript - Angular 10 和 ES2020 中的可选链接模块解析失败
- javascript - D3 Web 地图:将光栅 PNG 与 TopoJSON 对齐
- html - 使用一个元素在它后面的元素中创建一个“窗口”
- php - WooCommerce 再次订购和用于价格计算的自定义商品数据
- node.js - PDFToolKit 正在发送奇怪的数据