天天看点

Flask应用篇-数据库:数据库连接存在的问题

前:

  • 原生SQL
    • pymysql(2/3)
    • MySQLdb(2)
  • SQLAlchemy(ORM)(pymysql/MySQLdb)
  • flask-SQLAlchemy

原生SQL :

      参考:http://www.cnblogs.com/wupeiqi/articles/8184686.html

  1. 无连接池 (应用场景:单进程单线程;故在并发的场合下:数据库的连接就会随着并发量成线性增长 )
import pymysql

CONN = pymysql.connect(host='127.0.0.1',
                       port = 3306,
                       user = 'root',
                       password = '123',
                       database = 'pooldb',
                       charset = 'utf8')


cursor = CONN.cursor()
cursor.execute('select * from tb1')

result = cursor.fetchall()
cursor.close()

print(result)
           

   2.  并发情况下(解决上述的方式:不能为每个用户创建一个链接;创建一定数量的连接池。)

        DButils模块实现:

  • 安装(通过源码安装)
  • 使用:(采用连接池的方式)

ORM:参考https://www.cnblogs.com/wupeiqi/articles/8259356.html