Python編程實(shí)戰(zhàn)之Oracle數(shù)據(jù)庫(kù)操作示例
本文實(shí)例講述了Python編程實(shí)戰(zhàn)之Oracle數(shù)據(jù)庫(kù)操作。分享給大家供大家參考,具體如下:
1. 要想使Python可以操作Oracle數(shù)據(jù)庫(kù),首先需要安裝cx_Oracle包,可以通過下面的地址來獲取安裝包
http://cx-oracle.sourceforge.net/
2. 另外還需要oracle的一些類庫(kù),此時(shí)需要在運(yùn)行python的機(jī)器上安裝Oracle Instant Client軟件包,可以通過下面地址獲得
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
找到符合自己平臺(tái)的包,然后安裝,這里我使用的是rpm包,所以使用以下命令安裝
$ sudo rpm -ivh oracle-instantclient11.2-basic-11.2.0.3.0-1.i386.rpm
裝完畢后還需要設(shè)置一下環(huán)境變量,如下
3. 創(chuàng)建一個(gè)簡(jiǎn)單的python文件,測(cè)試安裝是否成功
import cx_Oracle
conn = cx_Oracle.connect('fkong/fkong@172.17.23.129/orcl')
cursor = conn.cursor ()
cursor.execute ("select * from dual")
row = cursor.fetchone ()
print row[0]
cursor.close ()
conn.close ()
4. 下面看一個(gè)數(shù)據(jù)庫(kù)建表和插入操作
import cx_Oracle
conn = cx_Oracle.connect('fkong/fkong@172.17.23.129/orcl')
cursor = conn.cursor ()
cursor.execute ("CREATE TABLE TEST(ID INT, COL1 VARCHAR(32), COL2 VARCHAR(32), COL3 VARCHAR(32))")
cursor.execute ("INSERT INTO TEST (ID, COL1, COL2, COL3)VALUES(1, 'a', 'b', 'c')")
cursor.execute ("INSERT INTO TEST (ID, COL1, COL2, COL3)VALUES(2, 'aa', 'bb', 'cc')")
cursor.execute ("INSERT INTO TEST (ID, COL1, COL2, COL3)VALUES(3, 'aaa', 'bbb', 'ccc')")
conn.commit()
cursor.close ()
conn.close ()
5. 下面再來看看查詢,查詢通常有兩種方式:一種是使用cursor.fetchall()獲取所有查詢結(jié)果,然后再一行一行的迭代;另一種每次通過cursor.fetchone()獲取一條記錄,直到獲取的結(jié)果為空為止??匆幌孪旅娴睦樱?/p>
import cx_Oracle
conn = cx_Oracle.connect('fkong/fkong@172.17.23.129/orcl')
cursor = conn.cursor ()
cursor.execute ("SELECT * FROM TEST")
rows = cursor.fetchall()
for row in rows:
print "%d, %s, %s, %s" % (row[0], row[1], row[2], row[3])
print "Number of rows returned: %d" % cursor.rowcount
cursor.execute ("SELECT * FROM TEST")
while (1):
row = cursor.fetchone()
if row == None:
break
print "%d, %s, %s, %s" % (row[0], row[1], row[2], row[3])
print "Number of rows returned: %d" % cursor.rowcount
cursor.close ()
conn.close ()
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python常見數(shù)據(jù)庫(kù)操作技巧匯總》、《Python編碼操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
- python連接oracle數(shù)據(jù)庫(kù)實(shí)例
- Python3.6連接Oracle數(shù)據(jù)庫(kù)的方法詳解
- Python操作Oracle數(shù)據(jù)庫(kù)的簡(jiǎn)單方法和封裝類實(shí)例
- python鏈接Oracle數(shù)據(jù)庫(kù)的方法
- 一步步教你用python連接oracle數(shù)據(jù)庫(kù)
- 利用Python連接Oracle數(shù)據(jù)庫(kù)的基本操作指南
- python實(shí)現(xiàn)與Oracle數(shù)據(jù)庫(kù)交互操作示例
- python連接oracle數(shù)據(jù)庫(kù)操作實(shí)例及遇到的異常
相關(guān)文章
pyinstaller參數(shù)介紹以及總結(jié)詳解
這篇文章主要介紹了pyinstaller參數(shù)介紹以及總結(jié)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
Python數(shù)據(jù)分析之?Pandas?Dataframe條件篩選遍歷詳情
這篇文章主要介紹了Python數(shù)據(jù)分析之?Pandas?Dataframe條件篩選遍歷詳情,查詢Pandas?Dataframe數(shù)據(jù)時(shí),經(jīng)常會(huì)篩選出符合條件的數(shù)據(jù),關(guān)于其使用方式,需要的小伙伴可以參考一下下面文章內(nèi)容2022-05-05
Python實(shí)現(xiàn)獲取前100組勾股數(shù)的方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)獲取前100組勾股數(shù)的方法,涉及Python數(shù)值計(jì)算與判斷相關(guān)操作技巧,需要的朋友可以參考下2018-05-05
對(duì)Python _取log的幾種方式小結(jié)
今天小編就為大家分享一篇對(duì)Python _取log的幾種方式小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Python?threading和Thread模塊及線程的實(shí)現(xiàn)
這篇文章主要介紹了Python?threading和Thread模塊及線程的實(shí)現(xiàn),Python通過兩個(gè)標(biāo)準(zhǔn)庫(kù)thread和threading提供對(duì)線程的支持,threading對(duì)thread進(jìn)行了封裝,具體實(shí)現(xiàn)介紹需要的朋友可以參考一下下面文章內(nèi)容2022-06-06
python關(guān)于矩陣重復(fù)賦值覆蓋問題的解決方法
這篇文章主要介紹了python關(guān)于矩陣重復(fù)賦值覆蓋問題的解決方法,涉及Python深拷貝與淺拷貝相關(guān)操作與使用技巧,需要的朋友可以參考下2019-07-07

