本文主要介紹python對oracle數據庫的操作學習
包含:oracle數據庫在Windows操作系統下的安裝和配置、python需要安裝的第三方拓展包以及基本操作的樣例學習。
1 Oracle數據庫
1.1 Oracle環境配置&客戶端連接
1.1.1 下載安裝Oracle綠色版客戶端instantclient:
到oracle官網下載instantclient basic包,解壓縮到E:\ProgramFile\instantclient;
1.1.2 設置環境變量:
- NLS_lANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK(注意中間有空格,這個如果不設,toad查詢中文會是亂碼)
- TNS_ADMIN= E:\ProgramFile\instantclient
- Path=...;E:\ProgramFile\instantclient
1.1.3 配置tnsnames.tns文件:
在E:\ProgramFile\instantclient下建立文件tnsnames.ora,將下面內容粘貼進該文件:
*** =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST= ***)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ***)
)
)
注:圖中紅色部分根據自己需要進行更改。
1.1.4 配置PL/SQL Developer進行連接:
在tools/preference里,oracle-connection選項配置oracle home和oci library:
- oracle home:E:\ProgramFile\instantclient
- oci library:E:\ProgramFile\instantclient\oci.dll
配置完成,可以重啟 plsql developer,輸入正確的用戶名和密碼就可以連接啦~~~
1.2 python連接oracle數據庫
1.2.1 安裝cx_Oracle包:
http://cx-oracle.sourceforge.net/ 需要注意下版本,根據操作系統和已安裝的python版本進行選擇
自行選擇版本,下載后直接執行即可
1.2.2 安裝后的驗證:
import cx_Oracle沒有報錯:
備注:如果import cx_Oracle 時報錯提示找不到OCI.DLL,解決方法:到裝了Oracle的機器上找一個,然后copy到Libsite-packages目錄下即可。
1.3 Python連接oracle數據庫的基本操作
1.3.1 創建數據庫連接connect和關閉數據庫連接close
創建數據庫連接的三種方式:
方法一:用戶名、密碼和監聽分開寫
import cx_Oracle
db=cx_Oracle.connect('username/password@host/orcl')
db.close()
方法二:用戶名、密碼和監聽寫在一起
import cx_Oracle
db=cx_Oracle.connect('username','password','host/orcl')
db.close()
方法三:配置監聽並連接
import cx_Oracle
tns=cx_Oracle.makedsn('host',1521,'orcl')
db=cx_Oracle.connect('username','password',tns)
db.close()
1.3.2 建立cursor並執行SQL語句:查詢、更新、插入、刪除
1.3.2.1 創建數據庫連接,創建游標cursor,然后執行sql語句,執行完成后,關閉游標,關閉數據庫連接
創建連接后,建立cursor,並執行SQL語句