复制表的例子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)。
微信扫码关注 亿华联众 公众号