mysql復(fù)制表的幾種常用方式
所描述的方法還請實(shí)際測試一下再使用.
1、復(fù)制表結(jié)構(gòu)及數(shù)據(jù)到新表
CREATE TABLE 新表SELECT * FROM 舊表
這種方法會將oldtable中所有的內(nèi)容都拷貝過來,當(dāng)然我們可以用delete from newtable;來刪除。
不過這種方法的一個最不好的地方就是新表中沒有了舊表的primary key、Extra(auto_increment)等屬性。需要自己用"alter"添加,而且容易搞錯。
2、只復(fù)制表結(jié)構(gòu)到新表
CREATE TABLE 新表SELECT * FROM 舊表WHERE 1=2
或CREATE TABLE 新表LIKE 舊表
3、復(fù)制舊表的數(shù)據(jù)到新表(假設(shè)兩個表結(jié)構(gòu)一樣)
INSERT INTO 新表SELECT * FROM 舊表
4、復(fù)制舊表的數(shù)據(jù)到新表(假設(shè)兩個表結(jié)構(gòu)不一樣)
INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 舊表
5、可以將表1結(jié)構(gòu)復(fù)制到表2
SELECT * INTO 表2 FROM 表1 WHERE 1=2
6、可以將表1內(nèi)容全部復(fù)制到表2
SELECT * INTO 表2 FROM 表1
7、 show create table 舊表;
這樣會將舊表的創(chuàng)建命令列出。我們只需要將該命令拷貝出來,更改table的名字,就可以建立一個完全一樣的表
8、mysqldump
用mysqldump將表dump出來,改名字后再導(dǎo)回去或者直接在命令行中運(yùn)行
9、復(fù)制舊數(shù)據(jù)庫到新數(shù)據(jù)庫(復(fù)制全部表結(jié)構(gòu)并且復(fù)制全部表數(shù)據(jù))
#mysql -u root -ppassword >CREATE DATABASE new_db; #mysqldump old_db -u root -ppassword--skip-extended-insert --add-drop-table | mysql new_db -u root -ppassword
10、表不在同一數(shù)據(jù)庫中(如,db1 table1, db2 table2)
sql: insert into db1.table1 select * from db2.table2 (完全復(fù)制)
insert into db1.table1 select distinct * from db2.table2(不復(fù)制重復(fù)紀(jì)錄) insert into tdb1.able1 select top 5 * from db2.table2 (前五條紀(jì)錄)
總結(jié)
到此這篇關(guān)于mysql復(fù)制表的幾種常用方式的文章就介紹到這了,更多相關(guān)MySQL復(fù)制表內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql遞歸函數(shù)with?recursive的用法舉例
在實(shí)際開發(fā)的過程中,我們會遇到一些數(shù)據(jù)是層級關(guān)系的、要展示數(shù)據(jù)子父級關(guān)系的時候,下面這篇文章主要給大家介紹了關(guān)于mysql遞歸函數(shù)with?recursive的用法舉例,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08
mysql切換MariaDB的項(xiàng)目實(shí)踐
SpringBoot切換MariaDB僅需替換Maven依賴為mariadb-java-client,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-07-07
MySQL Workbench導(dǎo)出表結(jié)構(gòu)與數(shù)據(jù)的實(shí)現(xiàn)步驟
MySQL Workbench是一個強(qiáng)大的數(shù)據(jù)庫設(shè)計工具,提供了便捷的數(shù)據(jù)導(dǎo)入導(dǎo)出功能,本文就來介紹一下MySQL Workbench導(dǎo)出表結(jié)構(gòu)與數(shù)據(jù)的實(shí)現(xiàn)步驟,感興趣的可以了解一下2024-05-05
MySQL數(shù)據(jù)庫之字符集?character
這篇文章主要介紹了MySQL數(shù)據(jù)庫之字符集?character,文章基于MySQL的的相關(guān)資料展開詳細(xì)介紹,具有一定的參考價值需要的小伙伴可以參考一下2022-05-05
Mysql 數(shù)據(jù)庫死鎖過程分析(select for update)
最近有項(xiàng)目需求,需要保證多臺機(jī)器不拿到相同的數(shù)據(jù),后來發(fā)現(xiàn)Mysql查詢語句使用select.. for update經(jīng)常導(dǎo)致數(shù)據(jù)庫死鎖問題,下面小編給大家介紹mysql 數(shù)據(jù)庫死鎖過程分析(select for update),對mysql數(shù)據(jù)庫死鎖問題感興趣的朋友一起學(xué)習(xí)吧2015-12-12
MySQL事務(wù)及Spring隔離級別實(shí)現(xiàn)原理詳解
這篇文章主要介紹了MySQL事務(wù)及Spring隔離級別實(shí)現(xiàn)原理詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-05-05

