Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
处理多个MySql查询(删除和复制)_Mysql_Sql - Fatal编程技术网

处理多个MySql查询(删除和复制)

处理多个MySql查询(删除和复制),mysql,sql,Mysql,Sql,早上好。 我有一个关于MySQL数据库的表。 在这个表中有5个机器人,每小时能写10条记录。 每隔3个月,我创建一个脚本,复制一个表,然后删除所有表条目(这样我可以按一定顺序保留ID) 我的问题是。 这是两种不同的说法: CREATE TABLE omologationResult_{date} AS SELECT * FROM omologationResult DELETE FROM omologationResult 如果脚本要在点0复制表,并且将从robots添加一条记录,那么没有问题

早上好。 我有一个关于MySQL数据库的表。 在这个表中有5个机器人,每小时能写10条记录。 每隔3个月,我创建一个脚本,复制一个表,然后删除所有表条目(这样我可以按一定顺序保留ID)

我的问题是。 这是两种不同的说法:

CREATE TABLE omologationResult_{date} AS SELECT * FROM omologationResult
DELETE FROM omologationResult
如果脚本要在点0复制表,并且将从robots添加一条记录,那么没有问题,因为SQL语句从最低ID开始,一直到最后。但是如果脚本要
删除
表,并且机器人正在其中写入。会发生什么?我丢了最后一张机器人唱片

如果这是真的。如何创建表的副本,然后仅删除已复制的数据


谢谢

是的,这不是一个安全的操作,因为它不是原子操作。另一个线程很有可能在创建之间向该表中插入值。。选择并删除。您可以选择使用多表


将确保仅从OMLogationResult中删除两个表中存在的项目

非常感谢!很高兴能帮上忙
CREATE TABLE omologationResult_{date} AS SELECT * FROM omologationResult;
DELETE omologationResult FROM omologationResult 
INNER JOIN omologationResult_{date} ON omologationResult_{date}.id = omologationResult.id