I nomi della tua tabella Users
e Companies
entrambi iniziano con una lettera maiuscola. PostgreSQL convertirà tutti gli identificatori in minuscolo (per impostazione predefinita), come puoi vedere dal messaggio di errore:
psycopg2.ProgrammingError: relation "users" does not exist
Dove users
è scritto tutto minuscolo. Questo è necessario se desideri seguire rigorosamente lo standard SQL (come PostgreSQL è famoso per). Puoi risolverlo in due modi:
Risolvilo nel tuo database:
Rispetta una convenzione comune e rinomina le tue tabelle essere tutto minuscolo.
Risolvilo nel tuo codice:
Cita i tuoi identificatori (il nome della tabella in questo caso) in modo che PostgreSQL li lascerà intatti:
cur.execute(""" SELECT * from "Users" """)