繁体   English   中英

数据库不存在(psycopg2.OperationalError)

[英]DATABASE NOT EXIST (psycopg2.OperationalError)

我的问题是数据库不存在我不知道原因

我确实安装了 FLASKALCHEMY 并在 CMD 中运行这些代码:

  -pip install flask-sqlAlqhemy 

        -python  
    - from app import db
    - db.create_all()
- pip install psycopg2

这个错误在 CMD 中出现在我身上:

     File "C:\Users\hajar\OneDrive\Desktop\flaskpro\env\lib\site-packages\sqlalchemy\engine\default.py", line 493, in connect
        return self.dbapi.connect(*cargs, **cparams)
      File "C:\Users\hajar\OneDrive\Desktop\flaskpro\env\lib\site-packages\psycopg2\__init__.py", line 127, in connect
        conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
    sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) FATAL:  database "hajar" does not exist
(Background on this error at: http://sqlalche.me/e/13/e3q8)

应用程序.py:

 from flask import Flask, render_template, request, redirect,url_for
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://postgres:jojo1437@localhost/hajar'
db = SQLAlchemy(app)

class user(db.Model):

    id = db.Column(db.Integer, primary_key=True)
    user_name = db.Column(db.String(80))
    email = db.Column(db.String(100), unique=True)

    def __init__(self, user_name, email):
        self.user_name = user_name
        self.email = email

    def __repr__(self):
        return '<User %r>' % self.user_name



@app.route('/')
def index():
    return render_template('add_user.html')


@app.route('/post_user', methods=['post'])
def post_user():
    user = user(request.form['username'], request.form['email'])
    db.session.add(user)
    db.session.commit()
    return redirect(url_for('index'))
if __name__ == "__main__":
    app.run()

在此处输入图片说明

请我真的被困在这里؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ :(

你已经创建了数据库"hajar "后面有个空格,而你正在试图连接到"hajar" ,这是行不通的,因为该数据库实际上并不存在。

只需删除创建数据库查询中不必要的空间,重新运行查询,就可以了。

很容易出错,我已经犯了数百次这种“明显”的错误。

您的错误意味着您没有创建数据库。

有关此主题的更多信息,请参阅 本教程 - 定义和访问数据库

您可以尝试使用flask init-db - 请参见此处

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM