인프런 커뮤니티 질문&답변

Jaejin Choi님의 프로필 이미지
Jaejin Choi

작성한 질문수

[2024 리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]

오리엔테이션과 강의 특징

판다스로 엑셀을 읽은 후에 mysql 로 넣기

작성

·

356

0

엑로 된 파일을 읽어서 데이터프레임에 넣은 다음에  이걸 다시 mysql 에 넣는 법을 연습하고 있습니다. 

pymysql 라이브러리를 사용하고 있는데... to_sql 이 사능한 것인지 여쭙니다. 

그리  df.to_sql(name='zz_tosql',con=engine,if_exists='append', index=False)

라고 넣으면  NameError Traceback (most recent call last)

<ipython-input-72-cd7c426caae3> in <module>
----> 1 df_from_excel=df.to_sql(name='zz_tosql',con=engine,if_exists='append', index=False)

NameError: name 'engine' is not defined

==>  무엇을 해야하나요 

답변 2

0

Jaejin Choi님의 프로필 이미지
Jaejin Choi
질문자

답변 감사드립니다.  

0

안녕하세요.

우선은 본 강의에서 다루지 않는 내용은 양해를 부탁드려요. 본 강의가 평생 제공되고, 질문/답변도 항상 해드리는데, 강의에서 다루지 않는 내용까지 답변을 드리기는 무리가 있거든요. 

처음이시니까 마지막으로 말씀드리면, engine 변수를 create_engine 함수를 사용해서 다음과 같은 형태로 만드셔야 합니다.

from sqlalchemy import create_engine

engine = create_engine('mysql+pymysql://dave:funcoding@localhost:3306/bitcoin?charset=UTF8MB4', encoding='utf-8')

conn = engine.connect()

다음 부분이 참고가 되실 것 같습니다.

https://www.fun-coding.org/mysql_advanced2.html

감사합니다.

Jaejin Choi님의 프로필 이미지
Jaejin Choi

작성한 질문수

질문하기