未在python PostgreSQL中创建数据库

xzv2uavs  于 2023-02-12  发布在  PostgreSQL
关注(0)|答案(1)|浏览(95)
import psycopg2
from config import host, user, password, db_name, port

connection = None
try:
    # подключаемся к базе
    connection = psycopg2.connect(
        host=host,
        user=user,
        password=password,
        database=db_name,
        port=port

    )
    connection.autocommit = True

    # cursor нужен чтобы взаимодействовать с БД
    # сейчас создаем нашу БД
    with connection.cursor() as cursor:
        cursor.execute(
            """CREATE TABLE IF NOT EXISTS data1 (
                price int NOT NULL,
                styles text NOT NULL,
                runes text);"""
        )

except Exception as _ex:
    print("[INFO] Error while working with PostgreSQL", _ex)
finally:
    if connection:
        connection.close()
        print("[INFO] PostgreSQL connection closed")

配置

host = "127.0.0.1"
user = "postgres"
password = "14101999"
db_name = "data"
port = "5432"

执行时,输出[INFO]使用PostgreSQL时出错
我不明白在所有的问题是什么,为什么数据库没有被创建,我似乎已经表明一切正确的配置...

xmjla07d

xmjla07d1#

我不知道你在哪里创建数据库。psycopg2.connect()必须连接到一个现有的数据库。所以要么你在Python脚本之外创建数据库,要么你连接到一个现有的数据库,最好使用名为postgres的数据库,然后发出一个CREATE DATABASE <some_name>。然后你需要关闭现有的连接,并创建一个新的连接到新的数据库。

相关问题