Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel dafür, wie Python cx_Oracle verwendet, um gespeicherte Oracle-Prozeduren aufzurufen

Beispiel dafür, wie Python cx_Oracle verwendet, um gespeicherte Oracle-Prozeduren aufzurufen

黄舟
黄舟Original
2017-10-09 10:36:283662Durchsuche

In diesem Artikel wird hauptsächlich vorgestellt, wie Python cx_Oracle zum Aufrufen gespeicherter Oracle-Prozeduren verwendet. Er analysiert die spezifischen Schritte und zugehörigen Betriebstechniken zum Aufrufen von PL/SQL über cx_Oracle in Python anhand spezifischer Beispiele.

Das Beispiel in diesem Artikel beschreibt, wie Python cx_Oracle verwendet, um gespeicherte Oracle-Prozeduren aufzurufen. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Der Haupttest hier besteht darin, PL/SQL über cx_Oracle in Python aufzurufen.

Erstellen Sie zunächst eine einfache gespeicherte Prozedur auf der Datenbankseite.


create or replace procedure test_msg(i_user in varchar2, o_msg out varchar2) is
begin
 o_msg := i_user ||', Good Morning!';
end;

Beginnen Sie dann mit dem Aufrufen gespeicherter Prozeduren in der Python-Befehlszeile.


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 &#39;Nick, Good Morning!&#39;>
print msg.getvalue() #Nick, Good Morning!
#资源关闭
cursor.close()
conn.close()

Erweiterte Lektüre:

Zwischen den Objekttypen von gespeicherten Prozeduren, cx_Oracle und Python Es gibt eine Konvertierungsbeziehung. Die Details lauten wie folgt:

Oracle cx_Oracle Python
VARCHAR2, NVARCHAR2, LONG cx_Oracle.STRING str
CHAR cx_Oracle.FIXED_CHAR str
NUMBER cx_Oracle.NUMBER int
FLOAT cx_Oracle.NUMBER float
DATE cx_Oracle.DATETIME datetime.datetime
TIMESTAMP cx_Oracle.TIMESTAMP datetime.datetime
CLOB cx_Oracle.CLOB cx_Oracle.LOB
BLOB cx_Oracle.BLOB cx_Oracle.LOB

Das obige ist der detaillierte Inhalt vonBeispiel dafür, wie Python cx_Oracle verwendet, um gespeicherte Oracle-Prozeduren aufzurufen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn