SMALL
Python에서 MySQL에 연동하면 DB에 있는 데이터를 불러와서 분석에 사용할 수 있습니다.
1. 필요한 모듈 불러오기
import pandas as pd
from sqlalchemy import create_engine
import pymysql
pymysql.install_as_MySQLdb()
import MySQLdb
2. DB에 연결하기
engine = create_engine("mysql+mysqldb://Username:"+"Password"+"@Hostname:Port", encoding='utf-8')
conn = engine.connect()
Username, Password, Hostname:Port 에는 연결하고 싶은 DB의 정보를 넣으면 됩니다.
(Port가 없으면 Hostname 만 쓰면 됩니다.)
3. 새로운 Dataframe 불러와서 테이블로 업로드하기
df = pd.read_csv('test.csv', encoding='utf8')
df.to_sql('test', engine, if_exists = 'replace', index=False, schema='test')
to_sql 메서드의 파라미터 중 'if_exists' 는 유용한 파라미터입니다.
if_exists는 데이터베이스에 테이블이 존재할 때 수행동작을 지정합니다.
'fail' | 데이터베이스에 테이블이 있다면 아무 동작도 수행하지 않음 |
'replace' | 테이블이 존재한다면 기존 테이블을 삭제하고 새로 테이블을 생성한 후 데이터를 삽입 |
'append' | 테이블이 존재하면 데이터만을 추가함 |
4. DB의 테이블을 Dataframe으로 SELECT 해오기
data = pd.read_sql_query('SELECT * FROM test', conn)
5. 연결 끊기
conn.close()
LIST
'SQL' 카테고리의 다른 글
[Colab/MySQL] Colab과 Mysql 연결하기 (1) | 2021.07.04 |
---|---|
[Python/MSSQL] Python과 MSSQL 연동하기 (pymssql) (0) | 2021.05.20 |
[질의구조] 삽입, 삭제, 갱신 (0) | 2020.07.20 |
[질의구조] 모호한 속성 이름 설정 (0) | 2020.07.18 |
[질의구조] SELECT-FROM-WHERE 와 Selection, Join (0) | 2020.07.17 |