Python连接oracle数据库踩到的坑
2016-05-10 17:40
363 查看
连了两天才连上,记录一下。
准备:
1.Python版本2.7
2.之前用plsql连接oracle时,下过一个简易版本的oracle client: instantclient-basic-win32-11.2.0.1.0(事实证明这是坑之一)
3.下载https://pypi.python.org/pypi/cx_Oracle,符合自己的版本。
4. 我的系统是win7
一开始我直接用pip install cx_Oracle,结果发现报错。后来一查,原来win下不能这样,只能在网站上下载。
下好安装以后, import cx_Oracle
结果报错ImportError: DLL load failed: %1 不是有效的 Win32 应用程序。(当时中文还是乱码的)
查了半天,原来oracle客户端是32位的-。-重新下载了个64位的,就好了。http://tonyqiu.iteye.com/blog/1296583
终于import成功。
当时,按照网上说的,我把客户端里的oci.dll拷到了%python_home%\Lib\site-packages
里
结果一直连接不上数据库,错误是:
cx_Oracle.InterfaceError:
Unable to acquire Oracle environment handle
后来参考了http://blog.itpub.net/29477587/viewspace-1704218/
原来是要把所有dll文件都拷贝过去。拷贝好后,终于连接上了数据库=。=
准备:
1.Python版本2.7
2.之前用plsql连接oracle时,下过一个简易版本的oracle client: instantclient-basic-win32-11.2.0.1.0(事实证明这是坑之一)
3.下载https://pypi.python.org/pypi/cx_Oracle,符合自己的版本。
4. 我的系统是win7
一开始我直接用pip install cx_Oracle,结果发现报错。后来一查,原来win下不能这样,只能在网站上下载。
下好安装以后, import cx_Oracle
结果报错ImportError: DLL load failed: %1 不是有效的 Win32 应用程序。(当时中文还是乱码的)
查了半天,原来oracle客户端是32位的-。-重新下载了个64位的,就好了。http://tonyqiu.iteye.com/blog/1296583
终于import成功。
当时,按照网上说的,我把客户端里的oci.dll拷到了%python_home%\Lib\site-packages
里
结果一直连接不上数据库,错误是:
cx_Oracle.InterfaceError:
Unable to acquire Oracle environment handle
后来参考了http://blog.itpub.net/29477587/viewspace-1704218/
原来是要把所有dll文件都拷贝过去。拷贝好后,终于连接上了数据库=。=
相关文章推荐
- oracle 连接出错 注册 regsvr32 OraOLEDB11
- Oracle Text是如何支持本地文件的检索
- oracle text
- Oracle中执行存储过程call和exec区别
- Oracle-PL/SQL使用
- Oracle权限管理详解(转载)
- Oracle、MYSQL、sql server和DB2分页查询写法
- Oracle、MYSQL、sqlserver和DB2分页查询
- Oracle 11g统计表空间使用率很慢
- Oracle 11g for Redhat 6 64位安装步骤
- Oracle 树操作(select…start with…connect by…prior)
- 关于oracle with as用法
- oracle 控制文件多路复用
- 修改oracle数据库监听端口号
- oracle connect by用法
- oracle笔记
- oracle 11g如何完全卸载_百度经验
- oracle connect by用法
- Oracle中分页查询
- 【Oracle】基于SCN的增量备份修复DataGuard GAP