這篇文章主要介紹了Python使用cx_Oracle調用Oracle存儲過程的方法,結合具體實例分析了Python中透過cx_Oracle調用PL/SQL的具體步驟與相關操作技巧,需要的朋友可以參考下
本文實例敘述了Python使用cx_Oracle呼叫Oracle預存程序的方法。分享給大家供大家參考,具體如下:
這裡主要測試在Python中透過cx_Oracle呼叫PL/SQL。
首先,在資料庫端建立簡單的預存程序。
create or replace procedure test_msg(i_user in varchar2, o_msg out varchar2) is begin o_msg := i_user ||', Good Morning!'; end;
然後,開始在Python命令列中進行預存程序呼叫。
import cx_Oracle as cx conn = cx.connect('database connecting string') cursor = conn.cursor() #声明变量 user = 'Nick' #plsql入参 msg = cursor.var(cx_Oracle.STRING) #plsql出参 #调用存储过程 cursor.callproc('test_msg', [user, msg]) #['Nick', 'Nick, Good Morning!'] #打印返回值 print msg #<cx_Oracle.STRING with value 'Nick, Good Morning!'> print msg.getvalue() #Nick, Good Morning! #资源关闭 cursor.close() conn.close()
#延伸閱讀:
預存程序、cx_Oracle、Python的物件類型之間存在轉換關係。具體如下:
Oracle | cx_Oracle | Python |
VARCHAR2, NVARCHAR2, LONG | cx_Oracle.STRING | str |
#CHAR | cx_Oracle.FIXED_CHAR | #str |
#NUMBER | cx_Oracle.NUMBER | |
FLOAT | cx_Oracle.NUMBER | |
DATE | cx_Oracle.DATETIME | |
#TIMESTAMP | #cx_Oracle.TIMESTAMP |
以上是Python如何使用cx_Oracle呼叫Oracle預存程序的範例的詳細內容。更多資訊請關注PHP中文網其他相關文章!