【一】引入
【1】正常创建数据库对象
import uuid
import pymysql
from flask import Flask, g, request, session
from flask_session import RedisSessionInterface
from pymysql.cursors import DictCursor
from redis import Redis
from flask_session import Session
app = Flask(__name__)
app.debug = True
app.secret_key = uuid.uuid4()
# (1)创建链接对象
conn = pymysql.connect(
user="root",
password="1314521",
host="localhost",
port=3306,
database="test"
)
# (2)创建 cursor 对象
# DictCursor : 序列化查到的数据是字典格式
cursor = conn.cursor(cursor=DictCursor)
@app.route('/', methods=['GET', 'POST'])
def index():
cursor.execute("SELECT * FROM test WHERE ID < 10")
res = cursor.fetchall()
print(res)
return 'index'
if __name__ == '__main__':
app.run()
'''
问题:
conn 和 cursor 是全局的,多个进程同时操作 数据库会发生数据库错乱
conn 和 cursor 要在视图函数中独立生成
# 在Django中使用orm语句时,会创建一个链接对象,执行,执行完毕后释放链接对象
'''
- 会产生问题
- conn 和 cursor 是全局的,多个进程同时操作 数据库会发生数据库错乱
- conn 和 cursor 要在视图函数中独立生成
在Django中使用orm语句时,会创建一个链接对象,执行,执行完毕后释放链接对象
- 优化后
import uuid
import pymysql
from flask import Flask, g, request, session
from flask_session import RedisSessionInterface
from pymysql.cursors import DictCursor
from redis im

最低0.47元/天 解锁文章
505

被折叠的 条评论
为什么被折叠?



