Warum kann ich keine Tabellen erstellen?Python

Python-Programme
Anonymous
 Warum kann ich keine Tabellen erstellen?

Post by Anonymous »

Ich erstelle ein Backend mit Postgresql. Wichtig zu erwähnen ist, dass mein Code ChatGPT für mich geschrieben hat. Der Projektname ist greenid und es ist auch der Name meiner Datenbank in Postgresql. Mein PostgreSQL ist in der 16. Version. Was bedeutet dieser Fehler? Was muss ich tun? Meine .env :

Code: Select all

DB_USER=postgres
DB_PASSWORD=test123
DB_HOST=localhost
DB_PORT=5432
DB_NAME=greenid
Dieser Fehler trat auch auf, als ich versuchte, init_db.py zu starten:

Code: Select all

from database import Base, engine
import models
Base.metadata.create_all(bind=engine)
print("Таблицы успешно созданы")
und vielleicht, wenn Sie Database.py benötigen:

Code: Select all

import os
from dotenv import load_dotenv
from urllib.parse import quote_plus
from sqlalchemy import create_engine
from sqlalchemy.orm import declarative_base

# 1️⃣ Загружаем .env
load_dotenv()
print("DB_PASSWORD =", os.getenv("DB_PASSWORD"))

# 2️⃣ Получаем значения
DB_USER = os.getenv("DB_USER")
DB_PASSWORD_RAW = os.getenv("DB_PASSWORD")
DB_HOST = os.getenv("DB_HOST")
DB_PORT = os.getenv("DB_PORT")
DB_NAME = os.getenv("DB_NAME")

# 3️⃣ Проверка (ОБЯЗАТЕЛЬНО)
if DB_PASSWORD_RAW is None:
raise RuntimeError("❌ DB_PASSWORD не найден.  Проверь файл .env")

# 4️⃣ Кодируем пароль
DB_PASSWORD = quote_plus(DB_PASSWORD_RAW)

DATABASE_URL = (
f"postgresql+psycopg2://{DB_USER}:{DB_PASSWORD}"
f"@{DB_HOST}:{DB_PORT}/{DB_NAME}"
)

engine = create_engine(DATABASE_URL)
Base = declarative_base()
Der Fehler selbst:

Code: Select all

DB_PASSWORD = test123
Traceback (most recent call last):
File "C:\Users\bekan\Desktop\greenid-backend\init_db.py", line 4, in 
Base.metadata.create_all(bind=engine)
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\sql\schema.py", line 5928, in create_all
bind._run_ddl_visitor(
~~~~~~~~~~~~~~~~~~~~~^
ddl.SchemaGenerator, self, checkfirst=checkfirst, tables=tables
)
^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3259, in _run_ddl_visitor
with self.begin() as conn:
~~~~~~~~~~^^
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.13_3.13.2544.0_x64__qbz5n2kfra8p0\Lib\contextlib.py", line 141, in __enter__
return next(self.gen)
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3249, in begin
with self.connect() as conn:
~~~~~~~~~~~~^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3285, in connect
return self._connection_cls(self)
~~~~~~~~~~~~~~~~~~~~^^^^^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 143, in __init__
self._dbapi_connection = engine.raw_connection()
~~~~~~~~~~~~~~~~~~~~~^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3309, in raw_connection
return self.pool.connect()
~~~~~~~~~~~~~~~~~^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 447, in connect
return _ConnectionFairy._checkout(self)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 1264, in _checkout
fairy = _ConnectionRecord.checkout(pool)
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 711, in checkout
rec = pool._do_get()
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\pool\impl.py", line 177, in _do_get
with util.safe_reraise():
~~~~~~~~~~~~~~~~~^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 224, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\pool\impl.py", line 175, in _do_get
return self._create_connection()
~~~~~~~~~~~~~~~~~~~~~~~^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 388, in _create_connection
return _ConnectionRecord(self)
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 673, in __init__
self.__connect()
~~~~~~~~~~~~~~^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 899, in __connect
with util.safe_reraise():
~~~~~~~~~~~~~~~~~^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 224, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 895, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
~~~~~~~~~~~~~~~~~~~~^^^^^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\engine\create.py", line 661, in connect
return dialect.connect(*cargs, **cparams)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\sqlalchemy\engine\default.py", line 630, in connect
return self.loaded_dbapi.connect(*cargs, **cparams)  # type: ignore[no-any-return]  # NOQA:  E501
~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
File "C:\Users\bekan\Desktop\greenid-backend\venv\Lib\site-packages\psycopg2\__init__.py", line 135, in connect
conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc2 in position 61: invalid continuation byte

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post