我正在尝试使用psycopg2
仅在本地计算机上运行的 postgresql 数据库,无论我尝试什么,它都无法返回结果。似乎可以正常连接到数据库,因为如果我更改任何配置参数都会引发错误,但是,当我运行看似有效且值得结果的查询时,我什么也得不到。
我的数据库正在运行,并且其中肯定有一个表:
postgres=# \c
You are now connected to database "postgres" as user "postgres".
postgres=# select * from foos;
name | age
---------+-----
Sarah | 23
Michael | 35
Alice | 12
James | 20
John | 52
(5 rows)
我的 python 代码连接到这个数据库,但无论我运行什么查询,我都会得到None
:
Python 2.7.3 (default, Apr 10 2013, 06:20:15)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import psycopg2
>>> conn = psycopg2.connect("dbname='postgres' user='postgres' host='localhost'")
>>> cur = conn.cursor()
>>> print cur.execute("select * from foos;")
None
>>> print cur.execute("select * from foos")
None
>>> print cur.execute("select name from foos")
None
>>> print cur.execute("select f.name from foos f")
None
我在做一些明显错误的事情吗?我怎样才能开始调试这个,我不知道从哪里开始,因为它连接得很好?