在Python中,如果需要連接Oracle數據庫,可以使用cx_Oracle庫來完成。cx_Oracle是Python操作Oracle數據庫的標準封裝。連接到Oracle數據庫的方式有多種,如下面所示。
方式1:使用用戶名和密碼連接。
conn = cx_Oracle.connect('{0}/{1}@{2}:{3}/{4}'.format(username, password, host, port, sid))
方式2:使用DSN連接。
dsn_tns = cx_Oracle.makedsn(host, port, sid) conn = cx_Oracle.connect(user=username, password=password, dsn=dsn_tns)
其中,用戶名、密碼、主機、端口和數據庫SID均需要替換成實際對應的值。
如果Oracle數據庫安裝在本地,可以使用以下方式連接。
import os os.environ['PATH'] = 'D:/Oralce/instantclient_19_8' + ';' + os.environ['PATH'] conn = cx_Oracle.connect('username/password@localhost:1521/orcl')
在進行連接之前,需要先下載Oracle Instant Client并配置環境變量。
在連接Oracle數據庫時,還需要注意以下事項。
1. 如果Oracle使用UTF8編碼,需要設置NLS_LANG環境變量。
os.environ['NLS_LANG'] = 'AMERICAN_AMERICA.AL32UTF8'
2. 如果Oracle使用非UTF8編碼,需要在連接時設置編碼方式。
conn = cx_Oracle.connect('username/password@localhost:1521/orcl', encoding='gb18030')
這里的gb18030是一個中文編碼方式的示例,需要根據實際情況進行設置。
3. 如果Oracle數據庫使用了SSL安全證書,則需要在連接時指定證書相關信息。
dsn = cx_Oracle.makedsn(host, port, sid, ssl=True) conn = cx_Oracle.connect(user=username, password=password, dsn=dsn, ssl_cert=path_to_cert, ssl_key=path_to_key, ssl_ca=path_to_ca)
以上就是使用cx_Oracle連接Oracle數據庫的方法,希望可以對大家有所幫助。