python連線Oracle資料庫

2022-07-04 14:18:17 字數 1926 閱讀 5664

除了安裝python和cx-oracle外還需要先配置客戶端的環境,否則執行仍然會報錯,下面介紹在windows下的配置方式

注意:a、電腦上安裝的python的版本要與cx-oracle版本一致

本人電腦上安裝的是python3.6.2 64位,則相應的cx-oracle版本為6.2

c、最重要的是oracle是64位的,則python必須也是64位的不然會報錯報錯報錯。。。。然後python與cx-oracle版本也要對應,否則也會報錯。

好了,上面已經把需要注意的點講清楚了,接下來正式配置了。

第一步:安裝python

第二步:安裝oracle客戶端instantclient-basic

設定環境變數path : c:\program files\python36\instantclient_11_2;  注意:後面必須新增 ; 隔開

第三步:pip安裝cx-oracle

pip install cx-oracle==6.2
第四步:python連線oracle資料庫的基本操作

(1)建立資料庫連線和關閉資料庫連線

方法一:使用者名稱、密碼和監聽分開寫

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()

(2)建立cursor並執行sql語句

建立資料庫連線,建立游標cursor,然後執行sql語句,執行完成後,關閉游標,關閉資料庫連線

# 建立游標cursor

cr = db.cursor()

sql = 'select * from table_name where number=123456'

# 執行sql語句

cr.execute(sql)

# 一次那個返回所有結果集 fetchall

rs = cr.fetchall()

print("print all:%s"%rs)

for x in rs:

print(x)

# 一次返回一行 fetchone

rs=cr.fetchone()

# 使用引數查詢

# 直接寫引數

cr.excute('select * from table_name where number=:id','id=123456')

rs = cr.fetchall()

# 將引數作為字典來處理

pr =

cr.excute('select * from table_name where number=:id',pr)

rs = cr.fetchall()

cr.close()

db.close()

# 插入、更新、刪除操作後需要提交 include:insert、update、delete

......

cr.close()

db.commit()

R for windows連線oracle資料庫

相關資料均出自r manual。只包含rodbc方法。其他oci等暫不考慮。1.安裝r軟體。2.安裝oracle。安裝目錄 d oraclexe 這個目錄下面有tnsnames.ora,listener.ora,sqlnet.ora等配置檔案,修改tnsnames.ora檔案新增需要登入的資料庫se...

Oracle檢視連線數

有時候連得上資料庫,有時候又連不上.可能是資料庫上當前的連線數目已經超過了它能夠處理的最大值.select count from v process 當前的連線數 select value from v parameter where name processes 資料庫允許的最大連線數 修改最大連...

oracle的連線數

1 查詢oracle的連線數 select count from v session 2 查詢oracle的併發連線數 select count from v session where status active 3 檢視不同使用者的連線數 select username,count userna...