Python3安裝cx_Oracle鏈接oracle數據庫實操總結

弄清版本,最重要!!!

首先安裝配置時,必須把握一個點,就是版本一致!包括:系統版本,python版本,oracle客戶端的版本,cx_Oracle的版本,而後安裝配置就容易了!html

若是已經安裝Python,查看你安裝的Python版本是多少位的:python

固然,你64位的操做系統也是能夠安裝32位的開發環境。反之則不行!切記!sql

oracle客戶端的版本,cx_Oracle的版本,要與Python版本和位數對應:數據庫

好比:oracle

Python版本:Python3.4.3   32位;測試

cx_Oracle的版本:cx_Oracle-5.2-11g.win32-py3.4fetch

oracle客戶端的版本:instantclient-basic-win32-11.2.0.1.0;spa

這裏還有三個注意點:操作系統

版本位數對應,都是32位;htm

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服務端。

相關文章
相關標籤/搜索