请问mysql事务执行查询汇总然后删除所有数据过程中有数据插入会有影响吗?

一个事务做的操作如下,查询所有数据,然后汇总同日期数据求和,然后清空表,再把汇总数据放回表,在这个过程中,会不会有数据刚好在查询完成,删除还没进行的时候插入,结果在没被查... 一个事务做的操作如下,查询所有数据,然后汇总同日期数据求和,然后清空表,再把汇总数据放回表,在这个过程中,会不会有数据刚好在查询完成,删除还没进行的时候插入,结果在没被查询汇总到的情况下被删掉。 展开
 我来答
注册到抓狂
2020-03-18 · TA获得超过654个赞
知道小有建树答主
回答量:1410
采纳率:72%
帮助的人:334万
展开全部
...........为什么要有这样的骚操作?汇总同日期的,你就不能用条件< 日期字段 between 日期1 and 日期2 >,,取出结果后放入汇总表?删除的时候,,你也可以使用相同条件去删除,,,,,,,,,,很难理解你想做的操作,没有意义啊,平白的消耗系统资源,,,,而且,,delete 语句是逐条执行的...,,很批量大数据删除的时候,,很慢矣....至于使用 truncate {tablename};截断表,,会丢数据的,,这个操作默认是不能回滚的..
更多追问追答
追问
做一个流程试验的时候,后面具体处理还没定,暂时只是尝试汇总数据试验一下,前面数据是不定时来,数据的日期也不确定,需要定时自动汇总,过程中想到会不会遇到这种情况就想问一下。
追答
如果是这样,,你还是用 RENAME TABLE tbl_name TO new_tbl_name;先把原表改名,,,然后 create table tbl_name like new tbl_name; 重建一张表,,,这个操作是原子性的,在你改名时,新数据不会插入.
1:改名
2:新建同名同结构表
3:去改名表里做你想做的事件,例如汇总后数据,插入新建的表
4:drop 改名表
------------------------------------
维护数据完整性,,修改一下步骤
1:CREATE TABLE new_table like old_table; -- 先建同结构数据表
2:RENAME TABLE old_table TO backup_table, new_table TO old_table; -- 从左到右执行的,原子性,先改名了旧数据表,然后新建的表,再改为原来的旧表名称...
3: select ****** from backup_table;-- 在备份表中语句操作
4:处理过数据后,,drop table backup_table; -- 直接删除备份出来的表,,
Na为专属
2020-03-12 · TA获得超过113个赞
知道小有建树答主
回答量:371
采纳率:71%
帮助的人:33.1万
展开全部
开启事物只要有一项失败,所有操作都会回滚
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式