군침이 싹 도는 코딩

Python MySQL Connector 를 이용해 Select 하는 방법 본문

Python/Flask

Python MySQL Connector 를 이용해 Select 하는 방법

mugoori 2023. 1. 4. 14:22
import mysql.connector

def get_connection() :
    connection = mysql.connector.connect(
        host = '호스트이름',
        database = 'DB이름',
        user = 'USER명',
        password = '비밀번호',
    )
    return connection

try :
    # 데이터 select
    # 1. DB에 연결
    connection = get_connection()

    # 2. 쿼리문 만들기
    query = '''select * from mysql_table;'''

    # 3. 커서를 가져온다.
    # select의 경우 dictionary = True로 설정한다.
    cursor = connection.cursor(dictionary = True)

    # 4. 쿼리문을 커서를 이용해서 실행한다.
    cursor.execute(query)

    # 5. select 문은, 아래 함수를 이용해서, 데이터를 받아온다 fatchall은 전부 가져온다는 뜻
    result_list = cursor.fetchall()
    
    # 받아온 result_list 출력
	print(result_list)
    
    # 중요 ! DB에서 가져온 timestamp 는
    # 파이썬에서 datetime 으로 자동 변환된다
    # json 으로 클라이언트한테 데이터를 보내줘야하는데
    # datetime은 json 으로 보낼수 없다
    # 따라서 시간을 문자열로 변환해서 보내준다
    i = 0
    for row in result_list :
        result_list[i]['created_at'] = row['created_at'].isoformat()
        result_list[i]['updated_at'] = row['updated_at'].isoformat()
        i = i + 1
    
    # 6. 자원 해제
    cursor.close()
    connection.close()

except mysql.connector.Error as e :
    cursor.close()
    connection.close()
    print(e)