连接数据库报错

来源:2-1 windows环境安装开发环境 (上)

annR4in

2023-02-16

from flask import Flask
from flask_sqlalchemy import SQLAlchemy




app = Flask(__name__)

# MySQL所在的主机名
HOSTNAME = "127.0.0.1"
# MySQL监听的端口号,默认3306
PORT = 3306
# 连接MySQL的用户名
USERNAME = "root"
# 连接MySQL的密码
PASSWORD = "root"
# 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)


# ORM模型映射成表的三步
# 1. flask db init:这步只需要执行一次
# 2. flask db migrate:识别ORM模型的改变,生成迁移脚本
# 3. flask db upgrade:运行迁移脚本,同步到数据库中



with app.app_context():
    with db.engine.connect() as conn:
        rs = conn.execute("select 1")
        print(rs.fetchone())  # (1,)


@app.route('/')
def hello_world():  # put application's code here
    return 'Hello World!'


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

报错信息
图片描述

配置信息是没问题的,在测试数据库连通性的时候报错了,找了很久没有找到想要的答案

写回答

1回答

编程浪子

2023-03-15

加我Q:1586538192  我给你远程看看

1
1
宝慕林0549928
赞一个!
2023-03-22
共1条回复

Python Flask入门与进阶 开发电影网站

从只会Python基础语法到

820 学习 · 283 问题

查看课程