先來總結復制表與結的方法
一、CREATE TABLE 方法
整表復制: create table 新表 select * from 舊表;
結構復制: 1、create table 新表 select * from 舊表 where 1<>1;
一,復制表結構
方法1:
代碼如下 復制代碼mysql> create table a like users; //復制表結構
Query OK, 0 rows affected (0.50 sec)
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| a |
| users |
+----------------+
2 rows in set (0.00 sec)
方法2:
代碼如下 復制代碼mysql> create table b select * from users limit 0; //復制表結構
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| a |
| b |
| users |
+----------------+
3 rows in set (0.00 sec)
方法3:
把sql語句copy出來,改一下表名和atuo_increment,然後在執行一下。
二,復制表數據,以及表結構
方法1:
代碼如下 復制代碼mysql> create table c select * from users; //復制表的sql
Query OK, 4 rows affected (0.00 sec)
Records: 4 Duplicates: 0 Warnings: 0
方法2:
代碼如下 復制代碼上面的2種方法,方便,快捷,靈活性強。
2、CREATE TABLE 新表 LIKE 舊表;
二、INSERT INTO 方法
得到建表語句: show create table 舊表;
復制數據到新表:
1、復制舊表的數據到新表(假設兩個表結構一樣)
INSERT INTO 新表 SELECT * FROM 舊表;
2、復制舊表的數據到新表(假設兩個表結構不一樣)
INSERT INTO 新表(字段1,字段2,…….) SELECT 字段1,字段2,…… FROM 舊表;
三、CREATE TEMPORARY TABLE創建臨時表