Part 05. SQL_Chapter 13. Python with MySQL

수야·2023년 7월 28일
0

install mysql driver

파이썬에서 mysql을 사용하기 위해 먼저 mysql driver를 설치한다.

pip install mysql-connector-python

잘 설치됬나 확인

import mysql.connector

create connection

mysql에 접속하기 위한 코드

mydb = mysql.connector.connect(
   host = 'hostname',
   user = 'username',
   password = 'password'
)

AWS RDS연결은

mydb = mysql.connector.connect(
   host = 'hostname',
   port = 3306
   user = 'username',
   password = 'password'
)

종료 해야함 항상

mydb.close()

특정 database에 접속하기 위한 코드

mydb = mysql.connector.connect(
    host = 'hostname',
    port = 3306,
    user = 'username',
    password = 'password',
    database = 'dbname'
)

excute sql

쿼리를 실행하기 위한 코드

mydb = mysql.connector.connect(
    host = 'hostname',
    port = 3306,
    user = 'username',
    password = 'password',
    database = 'dbname'
)

mycusor = mydb.cursor()
mycusor.execute('create table sql_file (id int, filenmae varchar(16))') #이 부분이 쿼리

하고나면

sql파일을 실행하기 위한 코드

mydb = mysql.connector.connect(
    host = 'hostname',
    port = 3306,
    user = 'username',
    password = 'password',
    database = 'dbname'
)

mycusor = mydb.cursor()
sql = open('work.sql').read()
mycusor.execute(sql)

그러나, sql파일 안에 여러개의 쿼리가 존재할 경우

mydb = mysql.connector.connect(
    host = 'hostname',
    port = 3306,
    user = 'username',
    password = 'password',
    database = 'dbname'
)

mycusor = mydb.cursor()
sql = open('work.sql').read()
mycusor.execute(sql, multi=True)

Fetch All

데이터가 들어간것을 확인하기 위해

mydb = mysql.connector.connect(
    host = 'hostname',
    port = 3306,
    user = 'username',
    password = 'password',
    database = 'dbname'
)

mycusor = mydb.cursor(buffered=True)
mycusor.execute('select * from sql_file')

result = mycusor.fetchall()
result

for result_iterator in result:
    print(result_iterator)

참고, 검색 결과를 pandas로 읽기

df = pd.DataFrame(result)
df.head()

python with csv


데이터 확인데이터 자체

데이터 확인
dataframe으로

profile
수야는 코린이에서 더 나아갈거야

0개의 댓글