Knowledge Map
파이썬 플라스크 sqlalchemy - DB받아오기 본문
파이썬 - 플라스크를 사용할때 mysql에서 db를 받아오는 방법은 다양하다.
pymysql, MySQLdb, sqlalchemy 등등...
sqlalchemy 방법
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | # -*- coding: utf-8 -*- from sqlalchemy import create_engine a_db = create_engine('mysql://root:1234@127.0.0.1:3306') a_info = a_db.execute("select * from DatabaseName.TableName") a_history = a_info.fetchall() objects = [] i = 0 for data in a_history: objects.append({ "1" : data[0], "2" : data[1], "3" : data[2], "4" : data[3], "5" : data[4], "6" : data[5], "7" : data[6] }) print objects[0] print objects[1] print objects[2] print objects[3] print objects[4] | cs |
4번째 라인은 원하는 아이피주소
5번째 라인은 원하는 쿼리 작성
pymysql 방법
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | import pymysql conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='1234',db='testserver') cur = conn.cursor() cur.execute("select * from next_android_nextagram") objects = [] for data in cur: objects.append({ "1" : data[0], "2" : data[1], "3" : data[2], "4" : data[3], "5" : data[4], "6" : data[5], "7" : data[6] }) print objects[0] print objects[1] print objects[2] print objects[3] print objects[4] | cs |
속도 측정을 해보니 생각보다 많이 차이가 났다.
sqlalchemy
0.124 , 0.104 , 0.134 , 0.107 , 0.108 평균 0.115
pymysql
1.039 , 1.044 , 1.046 , 1.040 , 1.041 평균 1.0420초
약 9배가 차이났다. 아주 간단한 쿼리였기 때문에 멀티플 쿼리 등을 비교할수는 없지만 간단한, 단일한 쿼리에서는 sqlalchemy를 쓰는게 성능상 이점을 가져올듯 하다.
'PYTHON' 카테고리의 다른 글
파이썬 강의 필기 1일차 (0) | 2016.04.03 |
---|---|
python2 & python3 설치 (0) | 2016.03.19 |
크롤링 lxml (0) | 2016.03.13 |
파이썬 프레임워크 플라스크 -1 (0) | 2016.02.29 |
파이썬 api mysql 연동 (0) | 2016.02.26 |
Comments