復(fù)制表的例子1、假如有兩張表結(jié)構(gòu)一樣的表,表名分別為 tableA 和 tableB,表 tableA 里邊有數(shù)據(jù),表 tableB 里邊沒有數(shù)據(jù),將表
復(fù)制表的例子
1、假如有兩張表結(jié)構(gòu)一樣的表,表名分別為 tableA 和 tableB,表 tableA 里邊有數(shù)據(jù),表 tableB 里邊沒有數(shù)據(jù),將表 tableA 中的數(shù)據(jù)復(fù)制到表 tableB 中。
INSERT INTO tableB SELECt * FROM tableA
1
2、如果不存在表 tableB,要復(fù)制 tableA 的表結(jié)構(gòu)到 tableB,
CREATE TABLE tableB LIKE tableA
1
3、如果事先不知道表 tableB 存不存在,要將 tableA 的表結(jié)構(gòu)復(fù)制到 tableB
CREATE TABLE IF NOT EXISTS tableB LIKE tableA
1
4、如果要復(fù)制表 tableA 的所有字段和數(shù)據(jù)到表 tableB。
CREATE TABLE IF NOT EXISTS tableB SELECt * FROM tableA
1
5、如果要復(fù)制表 tableA 中的部分字段和這些字段下的數(shù)據(jù)到表 tableB
CREATE TABLE IF NOT EXISTS tableB SELECt col1, col2, col3 FROM tableA
1
注意:
使用 SELECT 方法復(fù)制表中字段和數(shù)據(jù)到新創(chuàng)建的表時,只能復(fù)制表中的字段和數(shù)據(jù),不能復(fù)制表的屬性。例如 主鍵,索引,備注,所用的存儲引擎等這些都不能被復(fù)制。
SELECT 和 LIKE 方法的區(qū)別:
LIKE 方法:LIKE方法是專門復(fù)制表結(jié)構(gòu)的方法,他只復(fù)制表結(jié)構(gòu)和相關(guān)屬性,并不復(fù)制里面的數(shù)據(jù)。
SELECT 方法:嚴(yán)格來講 SELECT 方法不能理解成復(fù)制表結(jié)構(gòu)的方法,其實他只是執(zhí)行了一個SELECT查詢語句。其實復(fù)制的結(jié)果只包含了 SELECT 的字段和數(shù)據(jù),其他表屬性包括存儲引擎默認(rèn)字符集等都由系統(tǒng)的配置文件決定。
總結(jié):
如果要復(fù)制表結(jié)構(gòu),用 LIKE。
如果要表里面字段和數(shù)據(jù),用SELECT。
如果不僅要復(fù)制表結(jié)構(gòu)還要復(fù)制表里面的數(shù)據(jù) 可以先用 LIKE 再用 SELECT(先執(zhí)行上述例子中的3,再執(zhí)行1)。
微信掃碼關(guān)注 億華聯(lián)眾 公眾號