本文給大家分享了好幾種復(fù)制表結(jié)構(gòu)、表數(shù)據(jù)的示例介紹,具體詳情請看下文吧。
1、復(fù)制表結(jié)構(gòu)及數(shù)據(jù)到新表
CREATE TABLE 新表 SELECT * FROM 舊表
這種方法會將oldtable中所有的內(nèi)容都拷貝過來,當然我們可以用
delete from newtable;
來刪除。
不過這種方法的一個最不好的地方就是新表中沒有了舊表的primary key、Extra(auto_increment)等屬性。需要自己用 alter 命令添加,而且容易搞錯。
?
2、只復(fù)制表結(jié)構(gòu)到新表
CREATE TABLE 新表 SELECT * FROM 舊表 WHERE 1=2
或 CREATE TABLE 新表 LIKE 舊表
?
?
3、復(fù)制舊表的數(shù)據(jù)到新表(假設(shè)兩個表結(jié)構(gòu)一樣)
INSERT INTO 新表SELECT * FROM 舊表
?
?
4、復(fù)制舊表的數(shù)據(jù)到新表(假設(shè)兩個表結(jié)構(gòu)不一樣)
INSERT INTO 新表(字段1,字段2,…….) SELECT 字段1,字段2,…… FROM 舊表?
?
5、可以將表1結(jié)構(gòu)復(fù)制到表2
SELECT * INTO 表2 FROM 表1 WHERE 1=2?
?
6、可以將表1內(nèi)容全部復(fù)制到表2
SELECT * INTO 表2 FROM 表1?
?
7、 show create table 舊表;
這樣會將舊表的創(chuàng)建命令列出。我們只需要將該命令拷貝出來,更改table的名字,就可以建立一個完全一樣的表?
?
8、mysqldump
用mysqldump將表dump出來,改名字后再導(dǎo)回去或者直接在命令行中運行
以上內(nèi)容就是本文給大家推薦的幾種復(fù)制表結(jié)構(gòu)、表數(shù)據(jù)的方法,希望對大家有幫助。
相關(guān)推薦:
MySQL復(fù)制表結(jié)構(gòu)和表數(shù)據(jù)的SQL語句和時間函數(shù)