📜  MariaDB-表克隆

📅  最后修改于: 2020-11-27 05:36:14             🧑  作者: Mango


在某些情况下,需要生成现有表的精确副本。 CREATE … SELECT语句无法产生此输出,因为它忽略了索引和默认值之类的东西。

复制表的过程如下-

  • 利用SHOW CREATE TABLE生成一个CREATE TABLE语句,该语句详细说明了源表的整个结构。

  • 编辑该语句以为表重新命名,然后执行它。

  • 如果还需要复制表数据,请使用INSERT INTO … SELECT语句。

mysql> INSERT INTO inventory_copy_tbl (
   product_id,product_name,product_manufacturer,ship_date)
   
   SELECT product_id,product_name,product_manufacturer,ship_date,
   FROM inventory_tbl;

创建重复项的另一种方法使用CREATE TABLE AS语句。该语句复制所有列,列定义,并用源表的数据填充副本。

查看下面给出的语法-

CREATE TABLE clone_tbl AS
   SELECT columns
   FROM original_tbl
   WHERE conditions];

在下面查看其用法示例-

CREATE TABLE products_copy_tbl AS
   SELECT *
   FROM products_tbl;