0

我是 Python 的新手,正在尝试使用 Django 快速构建网站。

以下是我执行的步骤(Win 7):

  • 安装 Python 2.7
  • 安装 Django 1.4
  • 创建了一个项目和应用程序
  • 使用“”启动服务器python manage.py startserver并使用“http://127.0.0.1:8000”访问基本页面。
  • 现在想为我的项目配置我的 Oracle 11g 数据库。因此,安装cx_Oracle 5.1-11g并尝试了 ' python manage.py syncdb',但由于cx_Oracle.DatabaseError: ORA-24315: 非法属性类型而失败。
  • 即使从 python 解释器也得到了同样的错误。

    import cx_Oracle
     connection=cx_Oracle.Connection('python_user','python_user','(DESC..string..)')
    

    Traceback (most recent call last):
       File "<stdin>", line 1, in <module>
    cx_Oracle.DatabaseError: ORA-24315: illegal attribute type
  • 根据我的故障排除,我正在使用正确的凭据和库。

任何帮助表示赞赏..

4

2 回答 2

0

主要问题是以下版本应该相互兼容。

Python 2.7, Django 1.4,Oracle DB 11g (which I connect to)和 libcx_Oracle 5.0.3+-11g应该兼容Oracle Xe 11.2(之前是 10.2)。

安装正确的版本并将 ORACLE_HOME 设置为 ' C:/oraclexe/.../11.2.0/server' 后,它开始连接,没有任何问题。

于 2012-04-18T17:51:12.617 回答
0

通过引发显式异常来检查哪个属性失败可能会帮助您朝着正确的方向前进

try:
    connection=cx_Oracle.Connection('python_user','python_user','(DESC..string..)')
except cx_Oracle.DatabaseError, e:
    print e[0].context
    raise
于 2012-04-18T09:06:02.413 回答