MySQL復(fù)制表的三種方式(小結(jié))
復(fù)制表結(jié)構(gòu)及其數(shù)據(jù)
下面這個語句會拷貝數(shù)據(jù)到新表中。
注意:這個語句其實(shí)只是把select語句的結(jié)果建一個表,所以新表不會有主鍵,索引。
create table table_name_new as (select * from table_name_old);
只復(fù)制表結(jié)構(gòu)
create table table_name_new as select * from table_name_old where 1=2;
或者
create table table_name_new like table_name_old;
注意:前一種方式是不會復(fù)制主鍵類型,索引的,而后一種方式是把舊表的所有字段類型都復(fù)制到新表。
只復(fù)制表數(shù)據(jù)
如果兩個表結(jié)構(gòu)一樣
insert into table_name_new select * from table_name_old;
如果兩個表結(jié)構(gòu)不一樣
insert into table_name_new(column1,column2...) select column1,column2... from table_name_old;
注意:很多文章說可以通過如下語句進(jìn)行數(shù)據(jù)復(fù)制,table_name_new表可以不存在,會在執(zhí)行的過程中自動創(chuàng)建。其實(shí)該SELECT ... INTO形式是使查詢結(jié)果存儲在變量或?qū)⑵鋵懭胛募磘able_name_new是一個變量或者文件。
select column1,column2,.... into table_name_new from table_name_old;
到此這篇關(guān)于MySQL復(fù)制表的三種方式(小結(jié))的文章就介紹到這了,更多相關(guān)MySQL 復(fù)制表內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. MySQL之mysqldump的使用詳解2. navicat for mysql導(dǎo)出sql文件的方法3. 一文帶你學(xué)會Mysql表批量添加字段4. 理解DB2 9中新的查詢:XQuery5. 解析MySQL binlog6. Mybatis批量修改時出現(xiàn)報錯問題解決方案7. mysql創(chuàng)建數(shù)據(jù)庫的方法8. 詳解mybatis @SelectProvider 注解9. Oracle之關(guān)于各類連接超時相關(guān)參數(shù)學(xué)習(xí)10. mysql高效查詢left join和group by(加索引)
