国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python編程實(shí)戰(zhàn)之Oracle數(shù)據(jù)庫操作示例

2019-11-25 16:04:46
字體:
供稿:網(wǎng)友

本文實(shí)例講述了Python編程實(shí)戰(zhàn)之Oracle數(shù)據(jù)庫操作。分享給大家供大家參考,具體如下:

1. 要想使Python可以操作Oracle數(shù)據(jù)庫,首先需要安裝cx_Oracle包,可以通過下面的地址來獲取安裝包

http://cx-oracle.sourceforge.net/

2. 另外還需要oracle的一些類庫,此時(shí)需要在運(yùn)行python的機(jī)器上安裝Oracle Instant Client軟件包,可以通過下面地址獲得

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

找到符合自己平臺的包,然后安裝,這里我使用的是rpm包,所以使用以下命令安裝

$ sudo rpm -ivh oracle-instantclient11.2-basic-11.2.0.3.0-1.i386.rpm

裝完畢后還需要設(shè)置一下環(huán)境變量,如下

復(fù)制代碼 代碼如下:
$ export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/lib/oracle/11.2/client/lib

3. 創(chuàng)建一個(gè)簡單的python文件,測試安裝是否成功

import cx_Oracleconn = 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ù)庫建表和插入操作

import cx_Oracleconn = 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é)果為空為止。看一下下面的例子:

import cx_Oracleconn = 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.rowcountcursor.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.rowcountcursor.close ()conn.close ()

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python常見數(shù)據(jù)庫操作技巧匯總》、《Python編碼操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 泰和县| 鹤庆县| 长子县| 宁阳县| 涟水县| 广元市| 宁明县| 宜昌市| 武邑县| 资阳市| 灌云县| 平江县| 海晏县| 静海县| 海原县| 自贡市| 太仆寺旗| 平远县| 织金县| 鹿邑县| 宣城市| 武隆县| 丰台区| 屯留县| 和林格尔县| 昌吉市| 汉源县| 安溪县| 腾冲县| 奉化市| 曲水县| 威信县| 吐鲁番市| 陆川县| 德阳市| 仙居县| 苍梧县| 石家庄市| 丰镇市| 财经| 武陟县|