首页 > 解决方案 > Flask SQLAlchemy 无法连接到数据库

问题描述

我有一个正在尝试连接到 SQLite DB 的应用程序。我的 db 文件与应用程序位于同一目录中,但是当我向 create_all 发出命令时,出现以下错误:

sqlalchemy.exc.OperationalError:(sqlite3.OperationalError)无法打开数据库文件(此错误的背景: https ://sqlalche.me/e/14/e3q8 )

这是我正在使用的代码片段。

    app.config['SECRET_KEY'] = 'dont look at me im a secret'
    app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////C:/Users/me/PycharmProjects/thisproject/database.db'
    app.config['CSRF_ENABLED'] = True
    app.config['USER_ENABLE_EMAIL'] = False
    
    db = SQLAlchemy(app)
    
    
    class User(db.Model, UserMixin):
        id = db.Column(db.Integer, primary_key=True)
        username = db.Column(db.String(50), nullable=False, unique=True)
        password = db.Column(db.String(255), nullable=False, server_default='')
        active = db.Column(db.Boolean(), nullable=False, server_default='0')
    
    
    user_manager = UserManager(app, db, User)

标签: pythonsqliteflaskflask-sqlalchemy

解决方案


我相信真理是在这里。看来您没有正确指定 sqlite 数据库的路径。

您的路径应如下所示:

app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///C:\\Users\\me\\PycharmProjects\\thisproject\\database.db'

推荐阅读