파이썬에서 Flask 를 사용한다면 sqlalchemy 라는 sql이 기본 사용이겠지만,
많은 사람들이 MySQL 을 이용하므로
Flask 에서 MySQL 을 사용하는 방법을 정리해본다.
파이썬에 PyMySQL 설치
우선 파이썬에서 MySQL을 사용할 수 있는 환경을 만들어줘야 한다.
파이썬에서는 PyMySQL 패키지를 설치하면 된다.
파이썬 CMD를 켜고
pip3 install PyMySQL
위 명령어를 입력해준다.
금방 설치가 완료된다.
이제 파이썬 코드를 작성해보자.
import pymysql
sensor_db = pymysql.connect(
user='root',
passwd='{설정한 비밀번호}',
host='127.0.0.1',
db='sensor_check',
charset='utf8'
)
각자 자신이 생성한 MySQL 서버 관련 정보를 기입하면 된다.
그리고 사용할 db까지 선택해주어야 한다.
MySQL 데이터 불러오기
MySQL 에 저장되어 있는 데이터를 불러와보자.
테스트로 데이터 한줄만 넣어놓았다.
cursor = sensor_db.cursor()
sql = "SELECT * FROM {테이블명};"
cursor.ececute(sql)
result = cursor.fetchall()
result
위의 코드를 자신의 상황에 맞게 수정하여 입력하고 실행시켜주면 된다.
필자의 경우 파이썬에서 MySQL에 저장되어 있는 데이터가 정확하게 읽어와진 것을 확인할 수 있었다.
Cursor 에는 2가지 방법이 존재하는데,
위의 방법은 일반적인 튜플 형태의 Cursor 였고
이번에는 딕셔너리 형태의 Cursor인 DictCursor 를 사용해보겠다.
import pymysql
sensor_db = pymysql.connect(
user='root',
passwd='password',
host='127.0.0.1',
db='sensor_check',
charset='utf8'
)
cursor = sensor_db.cursor(pymysql.cursors.DictCursor)
sql = "SELECT * FROM sensor;"
cursor.execute(sql)
result = cursor.fetchall()
result
파이썬 코드를 위와같이 작성하고 실행해보면
위와 같이 결과가 나온다.
쉽게 말하자면 더 자세하게 확인할 수 있는 것이다.
MySQL에 데이터 추가하기
이번에는 MySQL에 데이터를 추가해보자.
import pymysql
sensor_db = pymysql.connect(
user='root',
passwd='password',
host='127.0.0.1',
db='sensor_check',
charset='utf8'
)
cursor = sensor_db.cursor(pymysql.cursors.DictCursor)
sql = "INSERT INTO sensor (name,type,amount,price) VALUES('아두이노 나노','MCU','10','3500');"
cursor.execute(sql)
sensor_db.commit()
파이썬 코드는 각자 SQL 상황에 맞게 수정하여 실행시키면 된다.
필자의 경우 파이썬 코드를 실행시킴으로써 MySQL 에 새로운 항목이 추가 된 것을 확인할 수 있었다.
위 파이썬 코드에서 commit() 을 사용하지 않으면 DB에 반영되지 않으므로, 주의해야 한다.
MySQL에 데이터 삭제하기
파이썬을 통해서 데이터를 확인하고, 추가하는 것을 해보았으므로 이번에는 삭제를 해보도록 하자.
import pymysql
sensor_db = pymysql.connect(
user='root',
passwd='password',
host='127.0.0.1',
db='sensor_check',
charset='utf8'
)
cursor = sensor_db.cursor(pymysql.cursors.DictCursor)
sql = "DELETE FROM sensor WHERE _id = 2;"
cursor.execute(sql)
sensor_db.commit()
방금 추가한 데이터가 _id 가 2 이므로
DELETE FROM sensor WHERE _id = 2
라는 명령을 MySQL에 보냄으로써
해당 데이터만 삭제하라는 지시를 내렸다.
MySQL 에서 데이터를 확인해보면
_id 가 2번인 데이터가 삭제된 것을 확인할 수 있었다.
여기까지 따라했으면 어떻게 파이썬에서 MySQL에 명령을 주는지 이해할 수 있을 것이다.
문장을 변수에 저장시키고
해당 변수를 커서를 통해 MySQL 에 보내는 것이 전부라고 할 수 있겠다.
이를 응용해서 MySQL을 파이썬으로 자유자재로 다룰 수 있다.
도움이 되었거나, 문제가 있는 경우 댓글로 알려주세요~!
감사의 댓글은 작성자에게 큰 힘이 됩니다 ^^
'코딩 > 파이썬' 카테고리의 다른 글
파이썬 QR코드 쉽게 생성하기 (4) | 2021.09.11 |
---|---|
아나콘다 파이썬 OpenCV 설치하는 방법 (0) | 2021.09.11 |
파이썬 웹서버에 MySQL 데이터 표로 출력하기 (0) | 2021.08.20 |
파이썬으로 간단하게 웹서버 구축하는 방법 - Flask 이용 (8) | 2021.08.19 |
파이썬 코딩의 첫 시작, 아나콘다 설치! (0) | 2021.04.20 |
댓글