从psycopg2中的模式获取数据

时间:2017-10-04 08:10:48

标签: python python-3.x postgresql psycopg2

我尝试连接到我的Python应用程序内的Postgres数据库。 我使用psycopg2库。

如果我执行这样的select语句:

cursor.execute("""select schema_name from information_schema.schemata;""")
rows = cursor.fetchall()
print(rows)

我得到了:

[('DB_FZ',), ('DB_FZ_TEMP',), ...]

但如果我执行声明

cursor.execute("""select * from DB_FZ.d_results;""")
rows = cursor.fetchall()
print(rows)

我收到错误

psycopg2.ProgrammingError: schema "db_fz" does not exist
LINE 1: select * from DB_FZ.d_results;

可能出现什么问题?

1 个答案:

答案 0 :(得分:1)

架构名称是大写的,你应该用双引号括起来:

cursor.execute("""select * from "DB_FZ".d_results;""")

另见Are PostgreSQL column names case-sensitive?