Python连接oracle数据库,先得安装cx_Oracle模块
具体代码如下
import cx_Oracle
import os
ip='192.168.1.12'
port=1521
sid='test'
username='test'
password='test'
#设置环境变量
os.environ['ORACLE_BASE']='/home/oracle'
os.environ['ORACLE_HOME']='/home/oracle/product/10.2.0.4'
os.environ['ORACLE_SID']='test'
os.environ['NLS_LANG']='american_america.ZHS16GBK'
def selectSQL(sql):
try:
tns=cx_Oracle.makedsn(ip,port,sid)
con=cx_Oracle.connect(username,password,tns)
cur=con.cursor()
cur.execute(sql)
result=cur.fetchall()
finally:
cur.close()
con.close()
return result
#selectSQL(sql)
还可以通过上面的代码和xlwt模块,将oracle数据库的数据导入成excel。
代码如下:
import os
import xlwt
import connOracle
book = xlwt.Workbook(encoding="utf-8")
def orecleDB2excel(sql):
i=1
sheetName=1
sheet= book.add_sheet(str(sheetName))
dataList=connOracle.selectSQL(sql)
for dbData in dataList:
if i%10000==0:
i=1
sheetName+=1
sheet=book.add_sheet(str(sheetName))
sheet.write(i,0,str(dbData[0]))
sheet.write(i,1,str(dbData[1]))
i+= 1
orecleDB2excel('select * from dba_objects')
book.save("test.xls")