목적

- Synology 패키지에서 기본 제공하는 DB인 mariaDB(mysql 기반)의 DB에 원격으로 접속하는 파이썬 코드를 작성

- SQL로 출력된 데이터를 Dataframe 형태로 받아온다 => 인지시에는 Table형태가 익숙하고 유리하다.

 

 

 

위 네개 패키지 기본 설치 진행

mysql-connector 가 없으면 연결시 에러처리 되니 유의

!pip install pymysql
!pip install mysql
!pip install mysql-connector
!pip install sqlalchemy
import pymysql
from pandas import json_normalize
from sqlalchemy import create_engine

#DB관련 라이브러리
import mysql.connector as mariadb
from mysql.connector import Error

# MySQL Connector using pymysql
pymysql.install_as_MySQLdb()
import MySQLdb

import pandas as pd

 

 

 

 

 

접속부분에서 아래 코드에서 접속ID , 비밀번호, DB접속주소/스키마명 을 수정하여 사용한다

encoding은 한글이 있어서 utf-8을 기준으로 한다

 

# DB connection
try:    
    engine = create_engine("mysql+mysqldb://접속ID:"+"비밀번호"+"@DB접속주소/스키마명", encoding='utf-8')
    conn = engine.connect()        
except Error as e:
    print("Error while connecting to MySQL", e)
finally:
    print("Complete")
 
 
 
 
 
 
sql문을 작성하고 이를 연결된 DB에 실행하고 Dataframe형태로 가져온다
 
# SQL문 실행
sql = "SELECT * FROM api_apt.지역코드관리" 
df1 = pd.read_sql(sql, conn)

 

 

 

 

아래 형태로 가져와 지는것을 확인할 수 있다

역시 Table형태로 보니 심플하다

 

반응형

+ Recent posts