python - ImportError - 帮助配置与postgresql模块一起使用的环境

时间:2015-05-30 14:25:48

标签: python postgresql postgresql-9.3

Python新手在这里。我正在试图弄清楚如何使用python连接到postgresql数据库。我需要帮助设置这个环境(使用Fedora 12的访客VM)。我有postgresql 9.3并想使用Psycopg2,我认为它与postgres一起使用?

我收到以下消息:

$ python LearningPsycopg2.py 
Traceback (most recent call last):
  File "LearningPsycopg2.py", line 5, in <module>
    import psycopg2
ImportError: No module named psycopg2

我安装了postgres并安装了python。我不确定如何安装python,但这是我到目前为止所做的:

-bash-4.3$ which python
/bin/python
-bash-4.3$ python -V
Python 2.7.8
-bash-4.3$ cd /bin/
-bash-4.3$ ls -ltr python*
-rwxr-xr-x. 1 root root   301 Jun 18  2014 python3-mako-render
-rwxr-xr-x. 1 root root   301 Aug 18  2014 python-coverage
lrwxrwxrwx. 1 root root    15 Aug 18  2014 python2-coverage -> python-coverage
lrwxrwxrwx. 1 root root     9 Nov  3  2014 python3 -> python3.4
-rwxr-xr-x. 2 root root 11288 Nov  3  2014 python3.4m
-rwxr-xr-x. 2 root root 11288 Nov  3  2014 python3.4
lrwxrwxrwx. 1 root root     9 Nov 10  2014 python2 -> python2.7
lrwxrwxrwx. 1 root root     7 Nov 10  2014 python -> python2
-rwxr-xr-x. 1 root root  7120 Nov 10  2014 python2.7

这是我的python脚本:

#!/bin/python2.7
#
# Small script to show PostgreSQL and Pyscopg together
#
import psycopg2

try:
   conn = psycopg2.connect("dbname='foo_bar_99999' user='foo_bar' host='localhost' password='abc#123!'")

except:
   print "I am unable to connect to the database"

cur = conn.cursor()

try:
    cur.execute("""SELECT * from foo_bar_99999.ups_date""")
except:
    print "I can't SELECT from ups_date"

rows = cur.fetchall()
for row in rows:
    print "   ", row[1][1]

1 个答案:

答案 0 :(得分:0)

您必须实际安装pyscopg2,默认情况下不会使用Python或PostgreSQL。有very detailed instructions here

另外,最好改变你的shebang线以适应Python可以安装的不同位置。

#!/usr/bin/env python2

这应该调用用户指定为&#34的python2实例;默认&#34;对他来说。