Don't Panic
in DB ☕ 1분 읽기

[DB] SQL 파이썬 연동

#DB
목차

데이터베이스 연동이란?

데이터베이스 연동은 SQL을 자바나 파이썬 같은 프로그래밍 언어와 연결하는 것을 말한다. 파이썬에서는 import pymysql 명령어를 통해 SQL과 파이썬을 연동한다.

pymysql을 이용한 파이썬-MySQL 연동 예제 코드

import pymysql

# 전역변수 선언부
conn, cur = None, None
data1, data2, data3, data4 = "", "", "", ""
sql=""

# 메인 코드
conn = pymysql.connect(host='127.0.0.1', user='root', password='0000', db='soloDB', charset='utf8')
cur = conn.cursor()

while (True) :
    data1 = input("사용자 ID ==> ")
    if data1 == "" :
        break;
    data2 = input("사용자 이름 ==> ")
    data3 = input("사용자 이메일 ==> ")
    data4 = input("사용자 출생연도 ==> ")
    sql = "INSERT INTO userTable VALUES('" + data1 + "','" + data2 + "','" + data3 + "'," + data4 + ")"
    cur.execute(sql)

conn.commit()
conn.close()

연동의 핵심 정리

  • MySQL과 파이썬을 연결하려면 pymysql.connect()연결자(connection) 를 생성한다.
  • 연결 통로인 커서(cursor) 를 통해 파이썬에서 MySQL에 SQL을 실행한다.
  • 데이터를 변경(예: 입력)한 후에는 커밋(commit) 을 수행해야 변경된 내용이 확정된다.
  • 파이썬에서 select문으로 데이터를 조회한 후에는 fetchone() 함수를 통해 데이터를 한 행씩 가져온다.

MySQL 데이터 입력 순서

MySQL 데이터 입력 처리 순서 다이어그램

MySQL 데이터 조회 순서

MySQL 데이터 조회 처리 순서 다이어그램


GUI 응용프로그램

사용자는 텍스트 형태로 프로그램을 사용하는 것을 선호하지 않으며, 간편한 방법으로 데이터베이스를 사용하고 싶어 한다. 이런 환경을 제공하는 것이 GUI 프로그램이다.

GUI는 윈도에 그래픽 환경으로 제공되는 화면을 통틀어 말한다. 파이썬을 통해 윈도에 출력되는 GUI 응용프로그램을 만들 수 있으며, 이를 도와주는 것이 tkinter라는 라이브러리다.

tkinter를 활용하면 흔히 사용하는 엑셀, 한글, 크롬 등의 응용프로그램과 비슷한 형태의 프로그램을 만들 수 있다.

tkinter로 만든 GUI 응용프로그램 구성 요소

tkinter 주요 위젯

  • 라벨(Label): 윈도에 문자를 표현한다.
  • 버튼(Button): 클릭 기능을 제공한다.
  • 프레임(Frame): 화면을 나누는 기능을 한다.
  • 엔트리(Entry): 입력 상자를 제공한다.