Python Flask框架 -- Flask连接MySQL数据库

python 复制代码
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy import text

app = Flask(__name__)

# MySQL所在的主机名或域名
HOSTNAME = '127.0.0.1'
# MySQL监听的端口号,默认3306
PORT = 3306
# 连接MySQL的用户名,用自己的
USERNAME = 'root'
# 连接MySQL的密码,用自己的
PASSWORD = '***'
# MySQL上创建的数据库名称
DATABASE = 'database_learn'

app.config[
    'SQLALCHEMY_DATABASE_URI'] = f'mysql+pymysql://{USERNAME}:{PASSWORD}@{HOSTNAME}:{PORT}/{DATABASE}?charset=utf8mb4'

# 在app.config中设置好连接数据库的信息
# 然后使用SQLAlchemy(app)创建一个db对象
# SQLAlchemy会自动读取app.config中连接数据库的信息
db = SQLAlchemy(app)

# 测试是否连接成功
with app.app_context():
    with db.engine.connect() as conn:
        rs = conn.execute(text("select 1"))
        print(rs.fetchone())  # 输出 (1,) 说明连接成功


@app.route('/')
def hello_world():
    return 'Hello World!'


if __name__ == '__main__':
    app.run()

在运行前先在MySQL中创建好 database_learn 数据库,字符集为 utf8mb4 ,与代码相对应。

运行结果:

相关推荐
测试老哥2 分钟前
Pytest 之assert断言的使用
自动化测试·软件测试·python·测试工具·测试用例·pytest·接口测试
活跃的煤矿打工人6 分钟前
【星海出品】SQLite的进阶操作
数据库·sqlite
云祺vinchin12 分钟前
医疗行业灾备实践:一套方案实现HIS、EMR、PACS系统安全闭环
数据库·安全·数据备份·医疗安全·容灾备份
2601_9563198814 分钟前
先把交易想法说清,再让 Python 承接
人工智能·python
梦想不只是梦与想16 分钟前
MySQL 中的窗口函数
数据库·mysql·窗口函数
Swift社区28 分钟前
Wi-Fi 6 的核心技术特性
人工智能·python
accept 99%37 分钟前
Lovart国内直通上线!可以来体验这款甜品“设计秘书”
python
严同学正在努力1 小时前
Oracle数据技术运维大全(下篇)
运维·数据库·ai·oracle·架构
开源量化GO1 小时前
学量化:看到“2026年 AI 写 Python”内容时,先用示例和练习补交易认知
人工智能·python