版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiaoyangdetian/article/details/81056115
python 操作oracle数据库的库为cx_oracle,我的开发环境为MAC OS系统
1 安装cx_oracle,使用:pip install cx_oracle,安装结束,import cx_oracle, 跑了段代码,嗯,悲剧了,提示找不到libclntsh.dylib这个文件,又仔细看了下,python的错误提示中,给出了一个帮助链接:
oracle官网啊,没注册过用户的童鞋,注册一下吧,因为要下载东西。
地址:https://oracle.github.io/odpi/doc/installation.html#macos
2 Download the 11.2, 12.1 or 12.2 “Basic” or “Basic Light” zip file from here。网页里的一句话,点击界面中的here,去安装文件(我这里安装的是12.2版本)
3 下载完毕,解压,然后在终端中设置如下
移动解压后的文件,到python3.6库文件夹下,你会发现,numpy等库也在这个文件夹下:
mv /Users/alisa/Desktop/mac/instantclient_12_2 /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/
打开环境配置文件:
vim ~/.bash_profile
配置文件里设置如下:
export PATH=~/instantclient_12_2:$PATH
export DYLD_LIBRARY_PATH=~/instantclient_12_2:$DYLD_LIBRARY_PATH
使环境生效:
source ~/.bash_profile
设置软链接如下:
ln -s /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/instantclient_12_2/libclntsh.dylib.12.1 ~/lib/
cp /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/instantclient_12_2/libclntshcore.dylib.12.1 ~/lib/
cp /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/instantclient_12_2/libons.dylib ~/lib/
cp /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/instantclient_12_2/libnnz12.dylib ~/lib/
cp /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/instantclient_12_2/libociei.dylib ~/lib/
ok了,再运行下试试,不报错了
下面给出一个段,使用cx_Oracle的代码示例:demo