Flask 学习-12.Flask-SQLAlchemy链接mysql数据库
2022/8/24 2:23:03
本文主要是介绍Flask 学习-12.Flask-SQLAlchemy链接mysql数据库,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
前言
SQLAlchemy采用简单的Python语言,提供高效和高性能的数据库访问,实现了完整的企业级持久模型。SQLAlchemy 是目前python中最强大的 ORM框架, 功能全面。
Flask-SQLAlchemy 是一个为 Flask 应用插件,封装了SQLAlchemy,简化了操作,只需添加配置项就可以在Flask 项目中使用。
Flask-SQLAlchemy 环境准备
Flask 使用版本v2.2.2
先安装连接 mysql 驱动包 pymysql
pip install pymysql
安装Flask-SQLAlchemy 应用插件
pip install flask-sqlalchemy
初始化配置
sqlalchemy 连接数据库,需要使用到一些配置信息,组合成满足以下条件的字符串:
dialect+driver://username:password@host:port/database
相关配置参数说明
配置参数 | 说明 |
---|---|
dialect | 数据库,如:sqlite、mysql、oracle等 |
driver | 数据库驱动,如前面安装的:pymysql |
username | 登录数据库用户名 |
password | 登录数据库密码 |
host | 数据库部署 IP 地址 |
port | 端口 |
database | 数据库库名 |
拼接地址示例
# 拼接配置dialect + driver://username:passwor@host:port/database DB_URI = 'mysql+pymysql://root:123456@localhost:3306/web'
flask-sqlalchemy 的相关配置封装到了 flask 的配置项中, 可以通过app.config属性 或 配置加载方案 (如config.from_object) 进行设置
配置选项 | 说明 |
---|---|
SQLALCHEMY_DATABASE_URI | 连接数据库。示例:mysql://username:password@host/post/db?charset=utf-8 |
SQLALCHEMY_BINDS | 一个将会绑定多种数据库的字典。 |
SQLALCHEMY_ECHO | 记录打印SQL语句用于调试的, 一般设置为False, 不然会在控制台输出一大堆的东西 |
SQLALCHEMY_POOL_SIZE | 数据库池的大小,默认值为5。 |
SQLALCHEMY_POOL_TIMEOUT | 连接超时时间 |
SQLALCHEMY_POOL_RECYCLE | 自动回收连接的秒数。 |
SQLALCHEMY_MAX_OVERFLOW | 控制在连接池达到最大值后可以创建的连接数。当这些额外的 连接回收到连接池后将会被断开和抛弃。 |
SQLALCHEMY_TRACK_MODIFICATIONS | 如果设置成 True (默认情况),Flask-SQLAlchemy 将会追踪对象的修改并且发送信号。这需要额外的内存, 如果不必要的可以禁用它。 |
这篇关于Flask 学习-12.Flask-SQLAlchemy链接mysql数据库的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-04-26MySQL查出时间比实际晚8小时的解决方案
- 2024-04-01JPA不识别MySQL的枚举类型
- 2024-03-30mysql数据库表卡死解决方法
- 2024-03-15MySQL多数据源笔记5-ShardingJDBC实战
- 2024-03-11natural join mysql
- 2024-03-11关于VS2017,VS2015 中利用 EF使用Mysql 不显示数据源问题解决方案
- 2024-02-26mysql 阿里云xb后缀备份文件恢复-icode9专业技术文章分享
- 2024-02-22docker mysql 5.7
- 2024-02-18从 20 多套 MySQL 到 1 套 TiDB丨骏伯网络综合运营管理平台应用实践
- 2024-02-07mysql 外键索引入门介绍,为什么工作中很少有人使用?