MySQL 復制表可以讓你創建一個新表,并將原表的所有數據和結構都復制到新表中。當你需要創建一個與現有表結構相同的表時,這個功能非常有用。
下面是一個簡單的例子:
CREATE TABLE old_table (
id INT PRIMARY KEY,
name VARCHAR(40),
email VARCHAR(60)
);
INSERT INTO old_table VALUES (1, 'John', 'john@example.com');
INSERT INTO old_table VALUES (2, 'Jane', 'jane@example.com');
INSERT INTO old_table VALUES (3, 'Bob', 'bob@example.com');
CREATE TABLE new_table LIKE old_table;
INSERT INTO new_table SELECT * FROM old_table;
在這個例子中,我們首先創建了一個名為 old_table 的表,并插入了一些數據。然后,我們使用 LIKE 關鍵字創建了一個名為 new_table 的新表,并通過 INSERT INTO...SELECT 語句復制了 old_table 中的所有數據和結構到 new_table 中。
現在,new_table 具有和 old_table 相同的結構和數據。
需要注意的是,復制表操作只復制表的結構和數據,不會復制表的索引、主鍵、外鍵、記錄數等其他屬性。
如果你想復制表的所有屬性,你可以使用 CREATE TABLE...SELECT 語句:
CREATE TABLE new_table2
LIKE old_table;
INSERT INTO new_table2
SELECT *
FROM old_table;
ALTER TABLE new_table2
ADD PRIMARY KEY (id),
ADD UNIQUE (email);
在這個例子中,我們首先創建了一個名為 new_table2 的表,和 old_table 有相同的結構和數據。接下來,我們使用 ALTER TABLE 語句為 new_table2 添加了一個主鍵和一個唯一索引。
現在,new_table2 具有和 old_table 相同的結構和數據,同時也繼承了 old_table 的主鍵和唯一索引。
上一篇mysql復制粘貼不上
下一篇css設置div一行