弄清版本,最重要!!!
首先安裝配置時,必須把握一個點,就是版本一致!包括:系統版本,python版本,oracle客戶端的版本,cx_Oracle的版本,然后安裝配置就容易了!
如果已經安裝Python,查看你安裝的Python版本是多少位的:

當然,你64位的操作系統也是可以安裝32位的開發環境。反之則不行!切記!
oracle客戶端的版本,cx_Oracle的版本,要與Python版本和位數對應:
比如:
Python版本:Python3.4.3 32位;
cx_Oracle的版本:cx_Oracle-5.2-11g.win32-py3.4
oracle客戶端的版本:instantclient-basic-win32-11.2.0.1.0;
這里還有三個注意點:
版本位數對應,都是32位;
cx_Oracle和python版本對應,都是3.4;
cx_Oracle和instantclient版本對應,都是11;
、
再次說明(別嫌我啰嗦,弄明白很重要):比如,我的系統是win7 64位,python版本卻是32位的,所以下載安裝的Oracle Client 也是32位 11g的,相應的cx_Oracle 也要是32位11g的,當然也要注意python的版,本python2.X還是python3.X,也要下相應的版本的。
這一點弄明白之后,我們就要准備安裝了。
cx_Oracle安裝
下載地址:https://pypi.python.org/pypi/cx_Oracle/5.3 下載低版本cx_Oracle版本
我是下載cx_Oracle-5.3-11g.win32-py3.6.exe,下載后直接雙擊安裝,就ok了。
不建議直接使用pip install cx_Oracle命令安裝,因為版本問題容易報錯。cx_Oracle 報錯:cx_Oracle.DatabaseError: DPI-1050: Oracle Client library must be at version 11.2,這就是cx_Oracle版本太高引起的。
oracle 客戶端
下載地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
把下載的文件解壓,復制oci,oraocci11,oraociei11的3個DLL粘貼到你的PY目錄的Libs/site-packages文件夾下面。
python3.4連接oracle數據庫測試代碼:
import cx_Oracle
conn = cx_Oracle.connect('用戶名/密碼@主機ip地址/orcl') #用自己的實際數據庫用戶名、密碼、主機ip地址 替換即可
curs=conn.cursor()
sql='SELECT * FROM 。。。' #sql語句
rr=curs.execute (sql)
row=curs.fetchone()
print(row[0])
curs.close()
conn.close()
配一個ORACLE_HOME的環境變量,指向Instant Client的目錄(如果你到這已經可以成功連接orcale數據庫了,環境變量這一步不執行也可以,視情況而定):
到自己想要放的路徑下,我的是C:\instantclient-basic-win32-11.2.0.1.0\instantclient_11_2
然后是配置環境變量:右鍵計算機——屬性——高級系統設置——環境變量——系統變量——新建
變量:ORACLE_HOME 值:Q:\OracleClient
變量:TNS_ADMIN 值:Q:\OracleClient
編輯path用';'隔開加一個 Q:\OracleClient
安裝結束,整個安裝過程非常簡單,也是我自己多次失敗的總結,希望對你有幫助!
補充一點:
oracle數據庫服務端版本如果是64位,你的機子上安裝的客戶端位數是32還是64,都不影響使用。
本機上不需要安裝oracle服務端。展
另推薦很好的視頻學習網站:http://www.51zxw.net/study.asp?vip=19591611
