dbeaver 엑셀 import 본문

DB관련/MySql, MariaDB

dbeaver 엑셀 import

반응형

DB관리로 유명한 툴 중에서 DBeaver를 사용하여 엑셀 데이터 Import하는 방법을 알아보겠습니다.

물론 엑셀의 데이터는 CSV 형태로 되어 있는 것으로 진행됩니다.

 

1) 우선 Import할 테이블을 선택하고 마우스 우클릭하면 아래와 같이 팝업이 뜹니다.

    (물론 테이블 선택을 안하셔도 뒤에서 다시 선택할 수 있습니다.)

    팝업이 뜨면 데이터 가져오기를 클릭합니다.

2) 아래와 같이 창이 뜨면 일단 다음을 누릅니다.

3) 다음을 누르면 아래와 같이 CSV파일을 선택하게 되고,

4) 파일을 선택하면 아래와 같이 선택된 내용이 나타납니다. 

   이미지 아래 'Importer settings' 에서 옵션 처럼 수정할 수도 있습니다. 

   하지만 거의 수정할 필요가 없기 때문에 저는 다음으로 넘어가겠습니다.

5) 다음은 테이블 맵핑 정리인데요. 

   Source는 CSV파일이고 Target은 처음 지정한 테이블 (tco_menu)입니다.

   하지만 제가 입력할 테이블은 tco_multilingual 이라서 바꿔야만 합니다. 

   아래에서 (깜빡해서 표시는 되어 있지 않지만) 'Browse'를 클릭하면 테이블을 선택할 수가 있습니다.

   (위에서 1번에서 미리 선택을 할 필요가 없었던 이유가 이것이였습니다.)

 

6) 그리고 다른 기능을 본다면 'New' 버튼은 애초에 없던 테이블을 생성하면서 Import 할 수 있습니다.

    해당 버튼을 클릭하면 테이블 명을 입력하라고 뜨고 거기에 새로운 테이블을 입력하면 됩니다.

    나중에 실제 처리를 할때 잘못될 소지로 인해서 데이터 손실이 걱정된다면 

    이 기능을 이용해서 새로운 테이블로 저장하시면 됩니다.

7) 위에 이미지에서 'Columns'를 클릭하면 아래와 같은 팝업이 뜨는데요. 

    가끔씩 Mapping 필드에 new라고 뜰 경우가 발생합니다.

    눈으로 보기에는 필드가 맞는데 해당 툴에서는 해당 필드가 신규필드라고 판단할 때가 있습니다.

    이걸 그대로 나두고 넘어간다면 해당 필드를 신규로 추가를 하는 경우가 발생하니 주의해야합니다.

    그래서 해결책은 Target Column 필드의 값을 다시 재 선택을 해주시면 됩니다.

    아래의 예를 들자면 Target Column 필드에 있는 'DOMAINID' 값을 선택하면 콤보로 선택할 수 있게 되는데요.

    그때 다시 한번 맞는 필드를 선택하시면 됩니다. 그러면 Mapping의 값이 existing으로 바뀌게 됩니다.

8) 맵핑이 다되었다면 다음으로 넘어가게 되고 아래 이미지와 같이 보여집니다.

    아래 셋팅은 기본 값으로 셋팅된 부분인데요. 그중에서 'Truncat target table(s) befor load'라는 게 있습니다.

    대부분 DB툴을 경험한 사람이라면 뭔지를 아실 겁니다.

    즉, import 하기 전에 기존 테이블의 데이터를 모두 삭제하는 것이지요. 

    이 옵션이 때로는 편리할 때도 있긴 하지만, 이 부분을 선택할 때는 주의를 해야하겠죠?

9) 위에 설정이 모두 끝났다면 마지막으로 다음 페이지로 넘어가면 아래 이미지와 같이 보입니다.

    지금까지 설정한 내용들이 다 보여지고 'Start'를 누르면 진행이 됩니다.

    가끔 오류가 발생을 하기도 합니다.

    저의 경우에는 key값의 디폴트 값이 없다고 뜨거나 중복된 데이터가 뜨는 경우도 있었습니다. 

    그리고 not null필드인데 null인 필드가 들어가서 오류나는 경우도 있구요.

    이런 부분은 CSV파일에서 데이터를 좀 Cleanzing 하는게 좋을 듯 합니다.

이렇게 DBeaver를 사용하여 엑셀 데이터 Import하는 방법을 알아봤는데요. 

약간 좀 어렵기도 하지만 그래도 유용한 툴 덕분에 대량의 데이터를 잘 옮겨도 봤습니다.

 

여러분들도 많이 사용하셔서 도움이 되시길 바랍니다.

반응형

Comments