MySQL 復(fù)制表
成都創(chuàng)新互聯(lián)公司是由多位在大型網(wǎng)絡(luò)公司、廣告設(shè)計(jì)公司的優(yōu)秀設(shè)計(jì)人員和策劃人員組成的一個具有豐富經(jīng)驗(yàn)的團(tuán)隊(duì),其中包括網(wǎng)站策劃、網(wǎng)頁美工、網(wǎng)站程序員、網(wǎng)頁設(shè)計(jì)師、平面廣告設(shè)計(jì)師、網(wǎng)絡(luò)營銷人員及形象策劃。承接:成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、網(wǎng)站改版、網(wǎng)頁設(shè)計(jì)制作、網(wǎng)站建設(shè)與維護(hù)、網(wǎng)絡(luò)推廣、數(shù)據(jù)庫開發(fā),以高性價比制作企業(yè)網(wǎng)站、行業(yè)門戶平臺等全方位的服務(wù)。
如果我們需要完全的復(fù)制MySQL的數(shù)據(jù)表,包括表的結(jié)構(gòu),索引,默認(rèn)值等。 如果僅僅使用CREATE TABLE … SELECT 命令,是無法實(shí)現(xiàn)的。
本章節(jié)將為大家介紹如何完整的復(fù)制MySQL數(shù)據(jù)表,步驟如下:
使用 SHOW CREATE TABLE 命令獲取創(chuàng)建數(shù)據(jù)表(CREATE TABLE) 語句,該語句包含了原數(shù)據(jù)表的結(jié)構(gòu),索引等。
復(fù)制以下命令顯示的SQL語句,修改數(shù)據(jù)表名,并執(zhí)行SQL語句,通過以上命令 將完全的復(fù)制數(shù)據(jù)表結(jié)構(gòu)。
如果你想復(fù)制表的內(nèi)容,你就可以使用 INSERT INTO … SELECT 語句來實(shí)現(xiàn)。
-from 樹懶學(xué)堂 - 一站式數(shù)據(jù)知識平臺
使用這種方法前,我們需要先下載一個MySQL客戶端工具SqlYog。點(diǎn)擊這里下載并安裝\x0d\x0a\x0d\x0a下面我們開始復(fù)制數(shù)據(jù)庫:\x0d\x0a1、打開SqlYog community Edition,分別在不同的選項(xiàng)卡中打開源數(shù)據(jù)庫服務(wù)器與目標(biāo)數(shù)據(jù)庫服務(wù)器,這一點(diǎn)很重。\x0d\x0a\x0d\x0a在源數(shù)據(jù)庫服務(wù)器選項(xiàng)卡中你將看到所有數(shù)據(jù)庫列表。\x0d\x0a2、在需要復(fù)制遷移的數(shù)據(jù)庫上右擊,在彈出菜單中選擇“Copy Database to Different Host/Database”\x0d\x0a3、在彈出對話框中,我們能看到源數(shù)據(jù)庫服務(wù)器及目標(biāo)服務(wù)器,在左邊,通過勾選復(fù)選框來選擇需要復(fù)制遷移的對象,如表、函數(shù)、觸發(fā)器等,也可以選擇所有對象。\x0d\x0a4、在右邊選擇需要遷移的目標(biāo)服務(wù)器或數(shù)據(jù)庫\x0d\x0a5、根據(jù)你的需要選擇復(fù)制類型:“Structure and Data”或“Structure only”,即“結(jié)構(gòu)和數(shù)據(jù)”或“僅結(jié)構(gòu)”。\x0d\x0a6、選擇結(jié)束后點(diǎn)擊“Copy”按鈕開始復(fù)制,知道數(shù)據(jù)遷移結(jié)束。
1、復(fù)制表結(jié)構(gòu)(語法 creata table 舊表 select * from 新表)
create table t1(
id int unsigned auto_increment primary key,
name varchar(32) not null default '',
pass int not null default 0 );
desc 查看表結(jié)構(gòu)
創(chuàng)建表 t2 同時復(fù)制表 t1 表結(jié)構(gòu) create table t2 select * from t1;
desc t2 查看表結(jié)構(gòu)
注意:兩張的表字段結(jié)構(gòu)一樣,但是 主鍵 primary key 和 自增 auto_increment 沒有了,所以這種方法不推薦大家使用,那如何才能創(chuàng)建出兩張完全一樣的表呢,辦法肯定有的,如下面語句。
create table t2 like t1;
這就可以創(chuàng)建一張 t2 和 t1 完全一樣的表了。
2、指定字段復(fù)制表結(jié)構(gòu)
語法: create table 新表 select 字段1,字段2 … from 舊表
3、復(fù)制表中數(shù)據(jù)
假設(shè)要把表 t1 中的數(shù)據(jù)全部復(fù)制到表 t2中
insert into t2 select * from t1;
如果只想復(fù)制某個字段
insert into t2(字段1,字段2) select 字段1,字段2 from t1;