📖Flask实战的经验总结📖
📱有问题随时与我联系,一起学习交流📱
❤️喜欢的话点个三连吧❤️
sqlite相关操作有:
- 1.将游标获取的Tuple根据数据库列表转换为Dict
- 2.获取(连接)数据库
- 3.执行SQL语句不返回数据结果
- 4.执行用于选择数据的SQL语句,参数one代表是否取第一条
- 5.关闭连接(在当前app上下文销毁时关闭连接)
写成函数形式,便于重复调用,使用pymysql,稍加修改也可以用于mysql数据库。
# 数据库操作相关函数
import sqlite3
from flask import Flask, g
# 数据库db文件url,换了环境后注意修改!!!
DATABASE_URL = r'YOURPATH\safe.db'
app = Flask(__name__)
# 数据库系列操作
# 1.将游标获取的Tuple根据数据库列表转换为Dict
def make_dicts(cursor, row):
return dict((cursor.description[i][0], value) for i, value in enumerate(row)) # enumerate既要遍历索引又要遍历元素时
# 2.获取(连接)数据库
def get_db():
db = getattr(g, '_database', None)
if db is None:
db = g._database = sqlite3.connect(DATABASE_URL)
db.row_factory = make_dicts
return db
# 3.执行SQL语句不返回数据结果
def execute_sql(sql, prms=()):
c = get_db().cursor()
c.execute(sql, prms)
c.connection.commit()
# 4.执行用于选择数据的SQL语句,参数one代表是否取第一条
def query_sql(sql, prms=(), one=False):
c = get_db().cursor()
result = c.execute(sql, prms).fetchall()
c.close()
return (result[0] if result else None) if one else result
# 5.关闭连接(在当前app上下文销毁时关闭连接)
@app.teardown_appcontext
def close_connection(exception):
db = getattr(g, '_database', None)
if db is not None:
db.close
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/63049.html