PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

psycopg2 não pode encontrar nenhuma tabela após a conexão


Seus nomes de tabela Users e Companies ambos começam com uma letra maiúscula. O PostgreSQL converterá todos os identificadores para letras minúsculas (por padrão), como você pode ver na mensagem de erro:
psycopg2.ProgrammingError: relation "users" does not exist

Onde users é escrito em letras minúsculas. Isso é necessário se você deseja seguir estritamente o padrão SQL (como o PostgreSQL é conhecido). Você pode resolver isso de duas maneiras:

Resolva no seu banco de dados:

Adira a uma convenção comum e renomeie suas tabelas ser tudo minúsculo.

Resolva no seu código:

Cite seus identificadores (o nome da sua tabela neste caso) para que o PostgreSQL os deixe intocados:
cur.execute(""" SELECT * from "Users" """)