Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.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_Select_Sql Delete - Fatal编程技术网

Mysql 插入到“从删除中选择”

Mysql 插入到“从删除中选择”,mysql,select,sql-delete,Mysql,Select,Sql Delete,我想将50行从表1传输到表2,我应该如何做 建议代码: INSERT INTO table2 SELECT * FROM table1 WHERE uid IN ('23','34','345','567','3242','34322','2') DELETE; 写2个陈述。如果使用InnoDB,请将其放入事务中: START TRANSACTION ; INSERT INTO table2 SELECT * FROM table1 WHERE uid I

我想将50行从表1传输到表2,我应该如何做

建议代码:

    INSERT INTO table2 SELECT * FROM table1 
    WHERE uid IN ('23','34','345','567','3242','34322','2') DELETE;

写2个陈述。如果使用InnoDB,请将其放入事务中:

START TRANSACTION ;

INSERT INTO table2 
  SELECT * 
  FROM table1 
  WHERE uid IN ('23','34','345','567','3242','34322','2') ;

DELETE FROM table1 
WHERE uid IN ('23','34','345','567','3242','34322','2') ;

COMMIT ;

写2个陈述。如果使用InnoDB,请将其放入事务中:

START TRANSACTION ;

INSERT INTO table2 
  SELECT * 
  FROM table1 
  WHERE uid IN ('23','34','345','567','3242','34322','2') ;

DELETE FROM table1 
WHERE uid IN ('23','34','345','567','3242','34322','2') ;

COMMIT ;



结尾处的删除是什么意思?表1和表2是否具有相同的模式,您是否将行追加到表2?我不知道,我想我在某处看到了它-我想做的是从表1中删除条目并将其移动(而不是复制)到表2您是否尝试了建议的代码?建议代码的输出是什么?结尾处的删除意味着什么?表1和表2是否具有相同的模式,您是否将行附加到表2?我不知道,我想我在某处看到了它-我想做的是从表1中删除条目并将其移动(而不是复制)到表2您是否尝试了建议的代码?建议代码的输出是什么?可以使用PHPMyadmin运行语句或脚本。问题是什么?没有问题,你问,我回答我没有问你的接口(PHPMyAdmin或其他)。我说如果你使用的是InnoDB引擎,就使用事务。InnoDB和MyISAM是两种最常见的引擎。MySQL中的每个表都属于一个引擎。请参阅:如果您是数据库的单一用户,则无需使用事务(尽管它不会造成伤害,但您将了解如何在数据库中完成操作)。如果存在多个并发用户/连接,则事务是安全带。如果在这2条(或更多)语句中出现任何错误,整个事务将被“回滚”。因此,如果插入失败,则不会从表1中删除行。更重要的是,如果其他人在表1中使用这些UID编写其他行(在插入和删除之间的一小部分时间内),这些行将不会被Delete.done删除,使用php my admin,我是单用户,没有事务,只有两条语句。一切都好。谢谢你!可以使用PHPMyadmin运行语句或脚本。问题是什么?没有问题,你问,我回答我没有问你的接口(PHPMyAdmin或其他)。我说如果你使用的是InnoDB引擎,就使用事务。InnoDB和MyISAM是两种最常见的引擎。MySQL中的每个表都属于一个引擎。请参阅:如果您是数据库的单一用户,则无需使用事务(尽管它不会造成伤害,但您将了解如何在数据库中完成操作)。如果存在多个并发用户/连接,则事务是安全带。如果在这2条(或更多)语句中出现任何错误,整个事务将被“回滚”。因此,如果插入失败,则不会从表1中删除行。更重要的是,如果其他人在表1中使用这些UID编写其他行(在插入和删除之间的一小部分时间内),这些行将不会被Delete.done删除,使用php my admin,我是单用户,没有事务,只有两条语句。一切都好。谢谢你!
INSERT INTO TABLE2 SELECT * FROM TABLE1 WHERE COL1 = 'A'