ㅇ 프로젝트/(Toy)_project

(SQL_Maker)1. 손쉽게 csv, xlsx파일을 데이터베이스 저장하자 GUI 구현

BrainKimDu 2022. 12. 5. 00:38

brainKimDu/SQL_Maker (github.com)

 

GitHub - brainKimDu/SQL_Maker

Contribute to brainKimDu/SQL_Maker development by creating an account on GitHub.

github.com

mysql을 이용하여 csv, xlsx파일의 데이터를 쉽게 데이터베이스에 삽입하자. (tistory.com)

 

mysql을 이용하여 csv, xlsx파일의 데이터를 쉽게 데이터베이스에 삽입하자.

brainKimDu/SQL_Maker (github.com) GitHub - brainKimDu/SQL_Maker Contribute to brainKimDu/SQL_Maker development by creating an account on GitHub. github.com csv, xlsx 파일을 읽어와 mysql을 이용하여 자동으로 테이블을 만들고 데이터를

kimbrain.tistory.com

해당 글을 GUI로 구현하였습니다.

 

SQL_Maker


손쉽게 csv, xlsx파일을 저장하자

  • csv, xlsx를 손쉽게 Database table로 제작하자!
  • database table에 손쉽게 데이터를 삽입하자!
  • MySQL 으로 데이터를 원하는대로 조회하고 csv파일로 저장하자!

운영체제

  • ubuntu 20.04

필요한 모듈

  • python 3.8.1
  • pandas
  • PyQt
  • mysql
  • xlrd

사용법

파이썬 사용시 초기설정이 필요합니다.

초기화면

접속

  1. Username을 입력합니다.
  2. password를 입력합니다.
  3. host을 입력합니다.
  • aws의 경우 database주소를 입력합니다.
  • local의 경우 localhost를 입력합니다.
  1. database를 입력합니다.
  2. connect를 눌러 접속을 합니다. state가 YES! 일경우 접속이 된 것이고, NO일 경우 접속이 안된 것입니다.

테이블 제작

  • csv나 xlsx파일을 준비합니다.
  • table제작 버튼을 클릭합니다.

  • 원하는 csv나 xlsx파일을 선택합니다.

  • 테이블의 이름을 입력합니다.

  • 다음의 mysql syntax가 실행됩니다.
  • 제작버튼을 누르면 테이블이 만들어집니다.

  • 테이블이 성공적으로 만들어졌습니다.

테이블에 데이터 삽입

  • 데이터 삽입 버튼을 클릭합니다.

  • 데이터를 삽입할 테이블을 선택합니다.

  • 데이터파일을 선택합니다. 컬럼수와 타입이 일치해야합니다. (같은파일이여야 합니다)

  • progress바가 100%가 될 때까지 기다리세요.

  • 데이터 삽입이 완료되었습니다.

테이블 삭제

  • table 삭제 버튼을 클릭합니다.

  • 테이블을 선택하고 OK를 누릅니다.

  • 성공적으로 테이블이 삭제되었습니다.

테이블 선택

  • 테이블 선택 버튼을 클릭합니다.

  • 원하는 테이블을 선택합니다.

advanced mode

  • 테이블을 선택하고 advanced 버튼을 클릭합니다.

  • mySQL syntax를 입력하면됩니다.
  • select와 from이 포함되는 문법이라면 조회가 가능합니다.
  • 그러나 union과 join처럼 2개의 테이블이 필요한 경우는 아직 구현하지 못 했습니다.
  • select 사용년월, 역명 from bus where 역명='원남동' 를 입력해보겠습니다. 
  • 다음처럼 조회가 가능합니다.

To csv..

  • 방금 만들었던 이미지를 csv로 저장할 수 있습니다.
  • To csv.. 버튼을 클릭합니다.

 -원남동으로 만들어보겠습니다.

  • 성공적으로 csv파일로 만들어주었습니다.

앞으로 구현해야할 것

  • Union, join을 구현할 예정입니다.
  • 손쉬운 사용모드를 구현하여 mysql문법을 몰라도 데이터를 추출할 수 있게 만들려고 합니다.