1. 程式人生 > 資料庫 >DBeaver操作資料表的拷貝的實現

DBeaver操作資料表的拷貝的實現

  通過DBeaver工具連結資料庫後,我們就可以通過選單或者命令功能來實現我們想要的目的。

  (一)建立資料庫

  新建資料庫,如下圖所示:

DBeaver操作資料表的拷貝的實現——>DBeaver操作資料表的拷貝的實現

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

  (二)建立資料表

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

DBeaver操作資料表的拷貝的實現

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

DBeaver操作資料表的拷貝的實現

  這樣設定好後,在點選“儲存”,就可以成功建立資料表了。接下來,我們通過選單或快捷鍵的方式來建立一個跟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,sex) values ('Anny',20,'女');

  這樣就可以在table_a中填充兩條示例資料了,如下圖所示:

DBeaver操作資料表的拷貝的實現

  (四)拷貝資料表

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

  將資料表tabel_a中的資料拷貝到資料表tabel_b中,先選中tabel_b,右擊,選擇匯入資料,如下圖所示:

DBeaver操作資料表的拷貝的實現——>DBeaver操作資料表的拷貝的實現——>

DBeaver操作資料表的拷貝的實現——>DBeaver操作資料表的拷貝的實現

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

DBeaver操作資料表的拷貝的實現

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

  (1)選中tabel_a表,右擊,選擇“匯出資料”,如下圖所示:

DBeaver操作資料表的拷貝的實現——>DBeaver操作資料表的拷貝的實現——>

DBeaver操作資料表的拷貝的實現

  (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,sex) select name,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

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

到此這篇關於DBeaver操作資料表的拷貝的實現的文章就介紹到這了,更多相關DBeaver 資料表拷貝內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!