예시는 음식 레시피를 모아놓은 데이터베이스를 구성한 것이다.
# 데이터베이스에 접속해서, 데이터 처리하는 테스트 코드
import mysql.connector
from mysql_connection import get_connetion
name = '순두부'
description = '맛있는 순두부찌개 만들기'
cook_time = '25'
direcrions = '육수를 끓이고 양념장을 만든 후 물이 끓을 때 감자를 먼저 넣고 끓이다 양념장과 순두부, 다른 야채를 넣고 끓인다.'
# 예외 처리 코드 : 만약에 접속시도하다 안되면 에러가 나게 만들어준 것. 이는 mysql.connector 을 만든 사람이 그렇게 하도록 정해둔 것.
try :
# 데이터 insert
# 1. DB 연결
connection = get_connetion()
# 2. 쿼리문 만들기 (%s는 변수 처리해준다는 뜻)
query = '''insert into recipe
(name, description, cook_time, directions)
values
( %s, %s, %s, %s);'''
record = (name, description, cook_time, direcrions)
# 3. 커서를 가져온다.
cursor = connection.cursor()
# 4. 커서를 이용해서 쿼리문을 실행한다.
cursor.execute(query, record)
# 5. 커넥션을 커밋해줘야 한다. == DB에 영구적으로 반영하라는 것임.
connection.commit()
# 6. 자원 해제
cursor.close()
connection.close()
except mysql.connector.Error as e:
pass
크게 보면 try 와 except 로 이루어진 코드이다. 이는 mysql connector의 기본 사용 방법이다.
중요한 부분은 %s 로 변수 처리하고 그 밑에 튜플 형태로 변수 묶음을 만들어
해당 변수가 사용되는 시점에 변수 묶음을 같이 입력해주는 부분이다.
상황과 환경에 따라 코드가 바뀌겠지만 큰 틀은 다음과 같다.
1. DB 연결
2. 쿼리문 만들기 ( 변수 처리 주의할 것, 변수 묶음은 튜플인 것도 주의! 콤마 주의!)
3. 커서를 가져온다.
4. 커서를 이용해서 쿼리문을 실행한다.
5. 커넥션을 커밋하여 데이터베이스에 영구적으로 반영해준다.
6. 자원 해제
'Python' 카테고리의 다른 글
Restful API에 대해 (0) | 2022.06.19 |
---|---|
Python Flask에서, Resource 클래스를 이용한 API 서버 개발하기 (0) | 2022.06.17 |
Python을 MySQL 데이터베이스에 연동하기 (0) | 2022.06.17 |
파이썬으로 원하는 곳에 디렉토리 만들기 (0) | 2022.06.16 |
파이썬에서 압축 파일 풀기 (0) | 2022.06.15 |
댓글