通過(guò)DBeaver工具鏈接數(shù)據(jù)庫(kù)后,我們就可以通過(guò)菜單或者命令功能來(lái)實(shí)現(xiàn)我們想要的目的。
(一)創(chuàng)建數(shù)據(jù)庫(kù)
新建數(shù)據(jù)庫(kù),如下圖所示:
——>
在點(diǎn)擊“確定”按鈕后,可能會(huì)遇到失敗,此時(shí),我們可以直接通過(guò)sql語(yǔ)句來(lái)實(shí)現(xiàn),在SQL控制臺(tái)中輸入CREATE DATABASE bien_test,執(zhí)行sql命令就可以完成創(chuàng)建了。
?。ǘ﹦?chuàng)建數(shù)據(jù)表
在bien_test數(shù)據(jù)庫(kù)下新建表table_a(名稱(chēng)任意,只要是合法的名稱(chēng)即可),如下所示:
當(dāng)點(diǎn)擊右下角的“保存”按鈕時(shí),提示這樣的信息“Incorrect table definition; there can be only one auto column and it must be defined as a key”(自增長(zhǎng)字段不是主鍵),此時(shí)需要在約束中指定id為主鍵,如下圖所示:
這樣設(shè)置好后,在點(diǎn)擊“保存”,就可以成功創(chuàng)建數(shù)據(jù)表了。接下來(lái),我們通過(guò)菜單或快捷鍵的方式來(lái)創(chuàng)建一個(gè)跟tabel_a表格式類(lèi)似的新表,先選中tabel_a,右擊-->菜單-->復(fù)制,或者直接使用Ctrl+C快捷鍵,然后Ctrl+V粘貼,最后點(diǎn)擊右下角的“保存”按鈕就完成新表的創(chuàng)建了,我們將該表重新命名為tabel_b。注意了,通過(guò)復(fù)制、粘貼表的方式,只能是將表的各種配置信息進(jìn)行拷貝,而表中的數(shù)據(jù)是沒(méi)有進(jìn)行拷貝的。
?。ㄈ┨畛鋽?shù)據(jù)
在SQL控制臺(tái)中輸入如下兩條語(yǔ)句:
insert into bien_test.tabel_a(name, age, sex) values ('Jack', 12, '男');
insert into bien_test.tabel_a(name, age, sex) values ('Anny', 20, '女');
這樣就可以在table_a中填充兩條示例數(shù)據(jù)了,如下圖所示:
?。ㄋ模┛截悢?shù)據(jù)表
1、通過(guò)菜單方式進(jìn)行拷貝
將數(shù)據(jù)表tabel_a中的數(shù)據(jù)拷貝到數(shù)據(jù)表tabel_b中,先選中tabel_b,右擊,選擇導(dǎo)入數(shù)據(jù),如下圖所示:
——>——>
——>
點(diǎn)擊上圖的紅色框,選擇源端,我們選擇了tabel_a表作為源端,如上圖的右邊所示。接著,按操作步驟一步一步點(diǎn)擊即可。最終,tabel_b的數(shù)據(jù)如下圖所示:
就這樣,就完成了數(shù)據(jù)表中數(shù)據(jù)的拷貝。此外,我們可以先不創(chuàng)建新表,直接通過(guò)源表來(lái)導(dǎo)出數(shù)據(jù)至一個(gè)運(yùn)行中創(chuàng)建的新表,比如:bien_test數(shù)據(jù)庫(kù)中暫時(shí)沒(méi)有tabel_c表,我們事先不要?jiǎng)?chuàng)建tabel_c表,同樣可以將tabel_a表的數(shù)據(jù)拷貝到tabel_c表中,具體操作如下:
(1)選中tabel_a表,右擊,選擇“導(dǎo)出數(shù)據(jù)”,如下圖所示:
——>——>
?。?)在上圖中,在Target列中輸入新表tabel_c名稱(chēng),而Mapping這一列會(huì)自動(dòng)默認(rèn)選擇create(表示新建表);接下來(lái),按照界面提示按鈕一步一步完成操作即可。tabel_c表中數(shù)據(jù)最終的效果與tabel_b表中數(shù)據(jù)一樣。由此可見(jiàn),在拷貝表數(shù)據(jù)時(shí)可以不用事先創(chuàng)建表,直接有源表導(dǎo)出至一個(gè)運(yùn)行時(shí)創(chuàng)建的新表。
2、通過(guò)sql命令進(jìn)行拷貝
?。?)insert select方式
該方式事先要新建一個(gè)表,假設(shè)為tabel_d表,才可以將tabel_a表數(shù)據(jù)拷貝到tabel_d表中。
insert into bien_test.tabel_d(name, age, sex) select name, age, sex from bien_test.tabel_a
通過(guò)運(yùn)行上述命令后完成了數(shù)據(jù)從tabel_a表拷貝到tabel_d表的過(guò)程,注意了tabel_a表中所有的數(shù)據(jù)都會(huì)被拷貝到tabel_d表中。
(2)select into方式
該方式可以不用事先創(chuàng)建表,假設(shè)為tabel_e表,通過(guò)select into方式也是可以完成數(shù)據(jù)表的拷貝。
select * into tabel_e from bien_test.tabel_a
經(jīng)測(cè)試,在MySQL中上述語(yǔ)句執(zhí)行失敗,此時(shí)我們需要稍作修改一下:
create table tabel_e as select * from bien_test.tabel_a
上述命令會(huì)執(zhí)行成功,最終也是完成了數(shù)據(jù)的拷貝。需要注意的是,這種方式的拷貝,主鍵信息是沒(méi)有被復(fù)制過(guò)來(lái)的!??!
到此這篇關(guān)于DBeaver操作數(shù)據(jù)表的拷貝的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)DBeaver 數(shù)據(jù)表拷貝內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- 使用Dbeaver遠(yuǎn)程連接Hive的詳細(xì)方法
- 詳解DBeaver連接MySQL8以上版本以及解決可能遇到的問(wèn)題
- DBeaver一款替代Navicat的數(shù)據(jù)庫(kù)可視化工具
- 詳解關(guān)于Dbeaver的常用操作
- oracle Dbeaver存儲(chǔ)過(guò)程語(yǔ)法詳解