Mariadb 简明教程
MariaDB - Table Cloning
有些情况下需要生成现有表的精确副本。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;