sql >> Base de Datos >  >> RDS >> PostgreSQL

Devuelva el marco de datos de Pandas de la consulta de PostgreSQL con sqlalchemy

Le molestan los problemas de sensibilidad de mayúsculas y minúsculas con PostgreSQL. Si cita el nombre de la tabla en la consulta, funcionará:

df = pd.read_sql_query('select * from "Stat_Table"',con=engine)

Pero personalmente, recomendaría usar siempre nombres de tablas en minúsculas (y nombres de columnas), también al escribir la tabla en la base de datos para evitar tales problemas.

De los documentos de PostgreSQL (http:// www.postgresql.org/docs/8.0/static/sql-syntax.html#SQL-SYNTAX-IDENTIFIERS ):

Para explicar un poco más:ha escrito una tabla con el nombre Stat_Table a la base de datos (y sqlalchemy citará este nombre, por lo que se escribirá como "Stat_Table" en la base de datos de postgres). Al hacer la consulta 'select * from Stat_Table' el nombre de la tabla sin comillas se convertirá a minúsculas stat_table , por lo que recibe el mensaje de que no se encuentra esta tabla.

Consulte, por ejemplo, también ¿Los nombres de las columnas de PostgreSQL distinguen entre mayúsculas y minúsculas?