本文給大家分享了好幾種復(fù)制表結(jié)構(gòu)、表數(shù)據(jù)的示例介紹,具體詳情請看下文吧。
創(chuàng)新互聯(lián)建站長期為數(shù)千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為羅城企業(yè)提供專業(yè)的網(wǎng)站設(shè)計制作、成都網(wǎng)站建設(shè),羅城網(wǎng)站改版等技術(shù)服務(wù)。擁有十年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
1、復(fù)制表結(jié)構(gòu)及數(shù)據(jù)到新表
CREATE
TABLE
新表SELECT
*
FROM
舊表
這種方法會將oldtable中所有的內(nèi)容都拷貝過來,當然我們可以用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)回去或者直接在命令行中運行
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ù)紀錄)
insert
into
tdb1.able1
select
top
5
*
from
db2.table2
(前五條紀錄)以上內(nèi)容就是本文的全部敘述,希望大家喜歡。
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
);
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;
mysql拷貝表操作我們會常常用到,下面就為您詳細介紹幾種mysql拷貝表的方式,希望對您學習mysql拷貝表方面能夠有所幫助。
假如我們有以下這樣一個表:
id username password
-----------------------------------
1 admin *************
2 sameer *************
3 stewart *************
CREATE TABLE IF NOT EXISTS `admin` ( `id` int(6) unsigned NOT NULL auto_increment, `username` varchar(50) NOT NULL default '', `password` varchar(100) default NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
1. 下面這個語句會拷貝表結(jié)構(gòu)到新表newadmin中。 (不會拷貝表中的數(shù)據(jù))
CREATE TABLE newadmin LIKE admin
2. 下面這個語句會拷貝數(shù)據(jù)到新表中。 注意:這個語句其實只是把select語句的結(jié)果建一個表。所以newadmin這個表不會有主鍵,索引。
CREATE TABLE newadmin AS ( SELECT * FROM admin )
3. 如果你要真正的復(fù)制一個表??梢杂孟旅娴恼Z句。
CREATE TABLE newadmin LIKE admin; INSERT INTO newadmin SELECT * FROM admin;
4. 我們可以操作不同的數(shù)據(jù)庫。
CREATE TABLE newadmin LIKE shop.admin; CREATE TABLE newshop.newadmin LIKE shop.admin;
5. 我們也可以拷貝一個表中其中的一些字段。
CREATE TABLE newadmin AS ( SELECT username, password FROM admin )
6. 我們也可以講新建的表的字段改名。
CREATE TABLE newadmin AS ( SELECT id, username AS uname, password AS pass FROM admin )
7. 我們也可以拷貝一部分數(shù)據(jù)。
CREATE TABLE newadmin AS ( SELECT * FROM admin WHERE LEFT(username,1) = 's' )
8. 我們也可以在創(chuàng)建表的同時定義表中的字段信息。
1、打開navicat軟件,打開要復(fù)制表的數(shù)據(jù)庫,如下圖所示:
2、點擊上方的“工具-數(shù)據(jù)傳輸”,如下圖所示:
3、進去之后,左邊選擇的是要復(fù)制的表的數(shù)據(jù)庫,右邊選擇的將表復(fù)制到目標數(shù)據(jù)庫,如下圖所示:
4、打開左邊數(shù)據(jù)庫對象中的“表”,選擇要復(fù)制哪幾張表,點擊開始。
5、點擊開始,會彈出一個框,點擊是,等待一下,出現(xiàn)如下界面,復(fù)制成功,點擊“關(guān)閉”。
6、可以看到表已經(jīng)復(fù)制到另外一個數(shù)據(jù)庫上了,如下圖所示:
分享文章:mysql表怎么復(fù)制論文 mysql復(fù)制表sql
文章路徑:http://muchs.cn/article38/ddiehpp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、靜態(tài)網(wǎng)站、品牌網(wǎng)站建設(shè)、商城網(wǎng)站、微信小程序、虛擬主機
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)