日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python連接oracle數(shù)據(jù)庫(kù)實(shí)例

系統(tǒng) 1692 0

本文實(shí)例講述了python連接oracle數(shù)據(jù)庫(kù)的方法,分享給大家供大家參考。具體步驟如下:

一、首先下載驅(qū)動(dòng):(cx_Oracle)

http://www.python.net/crew/atuining/cx_Oracle/
不過(guò)要注意一下版本,根據(jù)你的情況加以選擇。

二、安裝:

首先配置oracle_home環(huán)境變量
執(zhí)行那個(gè)exe安裝程序就可以了,它會(huì)copy一個(gè)cx_Oracle.pyd到Libsite-packages目錄下。
如果是linux,執(zhí)行

復(fù)制代碼 代碼如下:
python setup.py build
python setup.py install

三、執(zhí)行一段測(cè)試程序:

復(fù)制代碼 代碼如下:
import cx_Oracle

con = cx_Oracle.connect( "xjtu_test", "37343734","xjtu.world")
cursor = con.cursor()
cursor.close()
con.close()


里邊connect中的3個(gè)參數(shù)從左到右分別是:user, pass, TNS。
那個(gè)TNS可以用Oracle客戶端工具中的Net Configuration Assistant來(lái)配置。

四、具體的cx_Oracle API可以參考:
http://www.python.net/crew/atuining/cx_Oracle/html/cx_Oracle.html

五、示例:

復(fù)制代碼 代碼如下:
>>> import cx_Oracle
>>> conn=cx_Oracle.connect ('scott/tiger@oratest')
>>> curs=conn.cursor ()
>>> sql='select * from emp'
>>> rr=curs.execute (sql)
>>> row=curs.fetchone()
>>> row
(7369, 'SMITH', 'CLERK', 7902, datetime.datetime(1980, 12, 17, 0, 0), 800.0, None, 20)
>>> while row:
??? (ID,NAME)=(row[0],row[1])
??? row=curs.fetchone ()
??? print ID,NAME

???
7369 SMITH
7499 ALLEN
7521 WARD
7566 JONES
7654 MARTIN
7698 BLAKE
7782 CLARK
7788 SCOTT
7839 KING
7844 TURNER
7876 ADAMS
7900 JAMES
7902 日常
7934 MILLER

如果使用windows平臺(tái),執(zhí)行那段測(cè)試代碼時(shí)你肯定遇到問(wèn)題了,一般會(huì)有以下問(wèn)題:

① import cx_Oracle 時(shí)報(bào)告找不到OCI.DLL:
到裝了Oracle的機(jī)器上找一個(gè),然后copy到Libsite-packages目錄下就可以了。

② cx_Oracle.connect 時(shí)報(bào)告RuntimeError: Unable to acquire Oracle environment handle:
這個(gè)比較麻煩,按以下步驟來(lái)解決:(可能不需要所有的步驟,我沒(méi)有確認(rèn),不過(guò)把以下步驟都執(zhí)行了,確實(shí)問(wèn)題就解決了)
首先,確認(rèn)你是在控制臺(tái)下邊來(lái)執(zhí)行這個(gè)python腳本的。而不是某些ide,例如:PyDev(它們似乎無(wú)法載入os的環(huán)境變量)。
其實(shí),在本機(jī)安裝Oracle(只安客戶端工具就可以了)。
最后,添加以下環(huán)境變量:(我給出我的,換成你自己的路徑就可以了)

復(fù)制代碼 代碼如下:
ORACLE_HOME=D:OracleOra81
PATH=D:OracleOra81bin;

希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 五家渠市| 囊谦县| 桐梓县| 河西区| 沅江市| 隆子县| 甘泉县| 亚东县| 仙桃市| 江阴市| 霞浦县| 正蓝旗| 冕宁县| 昆山市| 万山特区| 宁陵县| 夏河县| 石台县| 乐山市| 抚松县| 平邑县| 城口县| 潞城市| 沛县| 乌兰察布市| 台北市| 清水河县| 泗阳县| 林口县| 南昌县| 福建省| 清流县| 牙克石市| 遵化市| 本溪市| 凤山县| 分宜县| 德惠市| 天水市| 三台县| 鄂托克旗|