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 ,与代码相对应。

运行结果:

相关推荐
小小编程路3 分钟前
新手快速学 Python 极简速成指南
开发语言·c++·python
阿洛学长10 分钟前
CSDN、掘金、简书博客文章如何转为Markdown?
运维·数据库·架构·php·持续部署
小马过河R11 分钟前
RAG检索优化策略:系统性四层框架解析
人工智能·python·算法·ai·llm·rag·问答
zuozewei15 分钟前
国产化之达梦数据库性能优化方案
数据库·性能优化
yzx99101320 分钟前
脚本定制从入门到实践:打造你的专属浏览器助手
python
AI技术控20 分钟前
论文解读:AE-TCN-SA——基于自编码器、TCN 与自注意力机制的锂电池内短路诊断方法
人工智能·python·深度学习·算法·机器学习·自然语言处理
Volunteer Technology38 分钟前
Spring AI MCP 案例-WebFlux SSE传输模式 (九)
java·数据库·人工智能·spring
向日的葵00643 分钟前
阿里云OSS从0到1实战:为宠物收养系统打造图片上传功能
python·阿里云·云计算·pillow·fastapi·宠物
川冰ICE1 小时前
Python爬虫实战⑳|Pandas时间序列,趋势分析一网打尽
爬虫·python·pandas
金融大 k1 小时前
多市场行情时间戳对齐:UTC 存储的夏令时陷阱与数据库设计方案
python·websocket·行情数据