csv파일을 MySQL에서 불러오기

TEO·2021년 1월 15일
1

이제 크롤링해서 형태소분석한 후 저장해둔 csv파일을 MySQL에다가 넣어줄거에요. 그래야 서버에서 찾을 수 있겠죠?

MySQL 다운

일단 저는 쉘 상에서 SQL을 다루는게 익숙치 않으니 MySQL workbench를 활용하도록 하겠습니다.

다운경로 : https://dev.mysql.com/downloads/workbench/

다운받는 법은 검색해보시면 다 나와요. 다운받고, 비밀번호 설정하고 실행시켜줍니다.

MySQL 설정

Schema와 Table을 만들어줍니다.

테이블 설정

저는 이렇게 만들었어요. 또한 csv파일을 저장한 column대로 review_id, grade, hotel_name, review_data, review_data2로 설정했습니다. SQL을 많이 다뤄보지 않아서 저 설정이 맞는지는 모르겠어요. 그냥 했습니다. 참고만 해주세요.

csv파일 Import

그리고 이제 저 동그라미 친 부분을 눌러서 csv파일을 import해줄 거에요.

근데 다음과 같은 오류가 뜹니다!

ㅜㅜ MySQL은 한글 import가 어렵다고 하더군요. 설정을 다 utf-8로 바꾸란 말이 있어서 해봤지만 잘 안되더라구요.

알바하면서 하루종일 찾아봤어요. https://github.com/codingeverybody/codingyahac/issues/710
이런 이슈가 있더라고요. 남들도 같은 오류를 겪었는지.. json파일로 넣으면 된답니다!

그래서 csv파일을 json파일로 변환시키고 import하는 작업을 했습니다.

제가 참고한 블로그는 https://verypurple.tistory.com/14 여기에요. 이 블로그를 참고하여 csv파일을 json파일로 바꾸고 다시 import했더니 몇번의 시도끝에 결국 완성했습니다!

왜 몇번의 시도였냐면... 칼럼 이름이 Table 칼럼 이름과 같아야 하더군요.. 그래서 csv파일에서 칼럼이름도 다 바꿔주었습니다.

형태소분석기는 한글을 사용해서 다른 외국어는 분석이 안된걸 볼 수 있어요.. 그래서 일단은 wordcloud에 형태소분석기로 돌린 리뷰와 그냥 리뷰 둘 다 넣어볼 생각입니다.


이제 MySQL을 Express에 연동시켜서 review_data를 잘 불러올 수 있나 확인해야겠죠??

다음 포스팅에서 review_data를 가져와보도록 하겠습니다!


이전 포스팅: Express와 React 연동하기(Express에서 React로 데이터 보내기)
다음 포스팅: Express에서 DB(MySQL)데이터 가져와 Select Option 구성하기

profile
프론트엔드 개발 공부 시작합니다~ 같이 공부해요!

0개의 댓글