MySQL復制表的三種方式(小結)
復制表結構及其數據
下面這個語句會拷貝數據到新表中。
注意:這個語句其實只是把select語句的結果建一個表,所以新表不會有主鍵,索引。
create table table_name_new as (select * from table_name_old);
只復制表結構
create table table_name_new as select * from table_name_old where 1=2;
或者
create table table_name_new like table_name_old;
注意:前一種方式是不會復制主鍵類型,索引的,而后一種方式是把舊表的所有字段類型都復制到新表。
只復制表數據
如果兩個表結構一樣
insert into table_name_new select * from table_name_old;
如果兩個表結構不一樣
insert into table_name_new(column1,column2...) select column1,column2... from table_name_old;
注意:很多文章說可以通過如下語句進行數據復制,table_name_new表可以不存在,會在執行的過程中自動創建。其實該SELECT ... INTO形式是使查詢結果存儲在變量或將其寫入文件,即table_name_new是一個變量或者文件。
select column1,column2,.... into table_name_new from table_name_old;
到此這篇關于MySQL復制表的三種方式(小結)的文章就介紹到這了,更多相關MySQL 復制表內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
1. 如何實現MySQL數據庫的備份與恢復2. Access數據庫安全的幾個問題3. Windwos下MySQL 64位壓縮包的安裝方法學習記錄4. mybatis plus代碼生成工具的實現代碼5. mysql啟動時報錯 ERROR! Manager of pid-file quit without6. MYSQL技巧:為現有字段添加自增屬性7. Navicat Premium操作MySQL數據庫(執行sql語句)8. navicat for mysql導出數據庫的方法9. MySQL插入數據時,如果記錄不存在則insert,如果存在則update10. navicat for mysql導出sql文件的方法
