python - 数据库连接错误:数据库“dbname”不存在
问题描述
我创建了一个 python 文件 app.py 并包含了连接到我在 postgresql 中创建的数据库的代码,如下所示: -
import psycopg2
conn = psycopg2.connect(
user='postgres',
password='1234',
host='localhost',
port='5432',
database='bubbleformation'
)
cursor = conn.sursor()
cursor.execute('SELECT * FROM bubbleformation')
for row in cursor: print(row)
conn.close()
这是在这篇中型文章中的指示
但是,当我尝试在终端中执行此 python 文件时,出现以下错误:-
回溯(最后一次调用):文件“app.py”,第 8 行,在 port='5432' 文件“/usr/lib/python2.7/dist-packages/psycopg2/init .py ”,第 130 行,在connect conn = _connect(dsn, connection_factory=connection_factory, **kwasync) psycopg2.OperationalError: FATAL: 数据库“bubbleformation”不存在
我创建了一个名为“bubbleformation”的表,可以通过终端在 psql 模式下查看。
谁能帮我理解应该做什么?我尝试更改密码和用户权限,但它们都没有解决我的错误。
解决方案
您应该创建具有相同名称“bubbleformation”的数据库和表。您可能已经在 postgres 数据库中创建了该表。
输入 psql 作为 postgres 用户并调用CREATE DATABASE bubbleformation;
,然后连接到它,\connect bubbleformation
然后创建您的表(类似于CREATE TABLE bubbleformation (id int, name text);
)。
推荐阅读
- angular - Angular 接口出现未定义
- bi-publisher - 输出为 excel 时 .xpt 报告的 BiPublisher 表名称
- node.js - IBM Cloud Object Storage, cannot modify object ACL permissions
- c++ - 在音频上下文中使用 std::async 的多线程队列
- c# - 如何生成枚举数的枚举数
- visual-studio - 代码分析器更新后,Visual Studio 反复重建项目
- angular - 如何从 Typescript/Angular 5 中的服务加载类的属性?
- android - FileProvider 提供程序路径不能指向资产文件夹
- php - apache 和 index.php laravel 路由
- python - 模型对象的 Django 复杂字符串表示 (def __str__(self):)