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