注意:64位操作系統必須安裝64位oracle客戶端,否則會連接報錯
安裝第三方庫:cx_Oracle
一、連接數據庫的三種方式:
1、cx_Oracle.connect('賬號/密碼@ip:端口/數據庫實例名')
2、cx_Oracle.connect('賬號', '密碼', 'ip:端口/數據庫實例名')
3、tns = cx_Oracle.makedsn('ip', '端口', '數據庫實例名')
cx_Oracle.connect('賬號', '密碼', tns)
示例:
tns = cx_Oracle.makedsn("192.168.81.186","1521","utf8186")
oracle.connect("interconn","ios",tns )
二、操作數據與mysql(pymysql)基本一致,參考mysql
import cx_Oracle as oracle
conn=oracle.connect("interconn/ios@192.168.81.186:1521/utf8186") #('賬號/密碼@ip:端口/數據庫實例名')
cursor=conn.cursor() #使用cursor()方法獲取數據庫的操作游標(游標是記錄操作哪個庫、表、字段、時間等信息)
try:
cursor.execute("select * from mp_log_load") #SelectSql可以是其他數據庫操作變量,執行sql語句,返回的是影響行數
OneData=cursor.fetchone() #一條查詢結果,返回類型為tuple
AllData=cursor.fetchall() #所有查詢結果,返回類型為tuple:((login_name1,passwd1,),(login_name2,passwd2),),可遍歷
conn.commit() #提交操作
cursor.close() #關閉游標
conn.close() #關閉數據庫連接
except pymysql.Error as e:
print("mysql error %d:%s" %(e.args[0],e.args[1])) #捕獲異常(如數據庫無法連接:ip、端口錯誤等)
conn.rollback() #報錯時回退
cursor.close() #關閉游標
conn.close() #關閉數據庫連接