Python Flask-SQLAlchemy 连接 MySQL 数据库完整流程

远山来客
远山来客
发布时间:2026-10-16 | 5人浏览过
原创

本文详细介绍如何在 Python Flask 项目中通过 Flask-SQLAlchemy 扩展连接 MySQL 数据库。内容涵盖环境安装、数据库 URI 配置、SQLAlchemy 实例化、ORM 模型定义及数据表的创建,最后演示了基本的增删改查操作,帮助开发者快速掌握 Flask 数据库集成流程。

安装依赖包

第一步,安装必要的依赖包。

执行命令:pip install flask-sqlalchemy

执行命令:pip install pymysql

配置数据库连接

第二步,进行数据库连接配置。

使用 Flask-SQLAlchemy 扩展操作数据库时,首要任务是通过 URL 建立数据库连接。该连接字符串必须保存至 Flask 配置对象的 SQLALCHEMY_DATABASE_URI 属性中。

HOSTNAME = '127.0.0.1' PORT = '3306' DATABASE = 'flask_test' USERNAME = 'root' PASSWORD = 'root' DB_URI = 'mysql+pymysql://{}:{}@{}:{}/{}?charset=utf8'.format(USERNAME,PASSWORD,HOSTNAME,PORT,DATABASE) app.config['SQLALCHEMY_DATABASE_URI'] = DB_URI

其中 HOSTNAME 代表数据库服务器的路由地址。

PORT 为端口号,此处未修改默认值,故使用 3306。

DATABASE 指定目标数据库的名称。

后续两个参数分别对应数据库的用户名和密码。

初始化 SQLAlchemy 实例

第三步,创建 SQLAlchemy 实例。

db = SQLAlchemy(app)

此处将创建的实例命名为 db。

定义 ORM 模型

第四步,定义 ORM 模型类。

创建模型类时,必须继承 db.Model 基类。

class Article(db.Model):
    __tablename__ = "article"
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    title = db.Column(db.String(200), nullable=False)
    content = db.Column(db.Text, nullable=False)

代码第二行定义数据库表名为 article。第三行定义 id 字段,类型为整数,设为主键并开启自增。第四行定义 title 字段,类型为长度 200 的字符串,且设为非空。第五行定义 content 字段,类型为 db.Text,同样设为非空。

创建数据表

第五步,生成数据表。

db.create_all()

执行后,数据库中会新增一张对应的表。

此时该表结构已存在,但内容为空。

执行数据增删改查

第六步,对表中数据进行增删改查操作。

这些操作可在视图函数中执行,也可直接在脚本中运行。

@app.route("/article")
def article_view():
    # 添加数据
    article = Article(title="钢铁是怎样炼成的", content="xxx")
    db.session.add(article)
    db.session.commit()
    # # 查询数据
    # article = Article.query.filter_by(id=1)[0]
    # print(article.title)
    # 
    # # 修改数据
    # article = Article.query.filter_by(id=1)[0]
    # article.content = "yyy"
    # db.session.commit()
    # 
    # # 删除数据
    # article = Article.query.filter_by(id=1)[0]
    # db.session.delete(article)
    # db.session.commit()
    return "数据操作成功"

添加数据时未指定 id,因前文已设置 id 的 autoincrement 为 True,系统会自动生成递增 ID。

执行插入操作后,数据库中可见新增记录。

其余查询、修改和删除操作的结果需自行验证。若需观察每一步的具体效果,建议在添加数据前注释掉其他三步代码,对其它步骤亦采取相同策略。

至此,关于 Python Flask-SQLAlchemy 连接数据库的流程介绍完毕。如需了解更多 Python 连接数据库相关内容,可搜索本站历史文章或继续阅读后续教程,感谢支持。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表