DBeaver操作數據表的拷貝


  通過DBeaver工具鏈接數據庫后,我們就可以通過菜單或者命令功能來實現我們想要的目的。

  (一)創建數據庫

  新建數據庫,如下圖所示:

 ——>

  在點擊“確定”按鈕后,可能會遇到失敗,此時,我們可以直接通過sql語句來實現,在SQL控制台中輸入CREATE DATABASE bien_test,執行sql命令就可以完成創建了。

  (二)創建數據表

  在bien_test數據庫下新建表table_a(名稱任意,只要是合法的名稱即可),如下所示:

  當點擊右下角的“保存”按鈕時,提示這樣的信息“Incorrect table definition; there can be only one auto column and it must be defined as a key”(自增長字段不是主鍵),此時需要在約束中指定id為主鍵,如下圖所示:

  這樣設置好后,在點擊“保存”,就可以成功創建數據表了。接下來,我們通過菜單或快捷鍵的方式來創建一個跟tabel_a表格式類似的新表,先選中tabel_a,右擊-->菜單-->復制,或者直接使用Ctrl+C快捷鍵,然后Ctrl+V粘貼,最后點擊右下角的“保存”按鈕就完成新表的創建了,我們將該表重新命名為tabel_b。注意了,通過復制、粘貼表的方式,只能是將表的各種配置信息進行拷貝,而表中的數據是沒有進行拷貝的。

  (三)填充數據

  在SQL控制台中輸入如下兩條語句:

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中填充兩條示例數據了,如下圖所示:

  (四)拷貝數據表

  1、通過菜單方式進行拷貝

  將數據表tabel_a中的數據拷貝到數據表tabel_b中,先選中tabel_b,右擊,選擇導入數據,如下圖所示:

——>——>

——>

  點擊上圖的紅色框,選擇源端,我們選擇了tabel_a表作為源端,如上圖的右邊所示。接着,按操作步驟一步一步點擊即可。最終,tabel_b的數據如下圖所示:

  就這樣,就完成了數據表中數據的拷貝。此外,我們可以先不創建新表,直接通過源表來導出數據至一個運行中創建的新表,比如:bien_test數據庫中暫時沒有tabel_c表,我們事先不要創建tabel_c表,同樣可以將tabel_a表的數據拷貝到tabel_c表中,具體操作如下:

  (1)選中tabel_a表,右擊,選擇“導出數據”,如下圖所示:

——>——>

  (2)在上圖中,在Target列中輸入新表tabel_c名稱,而Mapping這一列會自動默認選擇create(表示新建表);接下來,按照界面提示按鈕一步一步完成操作即可。tabel_c表中數據最終的效果與tabel_b表中數據一樣。由此可見,在拷貝表數據時可以不用事先創建表,直接有源表導出至一個運行時創建的新表。

  2、通過sql命令進行拷貝

  (1)insert select方式

  該方式事先要新建一個表,假設為tabel_d表,才可以將tabel_a表數據拷貝到tabel_d表中。

insert into bien_test.tabel_d(name, age, sex) select name, age, sex from bien_test.tabel_a

  通過運行上述命令后完成了數據從tabel_a表拷貝到tabel_d表的過程,注意了tabel_a表中所有的數據都會被拷貝到tabel_d表中。

  (2)select into方式

  該方式可以不用事先創建表,假設為tabel_e表,通過select into方式也是可以完成數據表的拷貝。

select * into tabel_e from bien_test.tabel_a

  經測試,在MySQL中上述語句執行失敗,此時我們需要稍作修改一下:

create table tabel_e as select * from bien_test.tabel_a

  上述命令會執行成功,最終也是完成了數據的拷貝。需要注意的是,這種方式的拷貝,主鍵信息是沒有被復制過來的!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM