>  기사  >  백엔드 개발  >  Python이 cx_Oracle을 사용하여 Oracle 저장 프로시저를 호출하는 방법의 예

Python이 cx_Oracle을 사용하여 Oracle 저장 프로시저를 호출하는 방법의 예

黄舟
黄舟원래의
2017-10-09 10:36:283605검색

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

더 읽어보기: 저장 프로시저, cx_Oracle 및 Python 개체 유형 간에는 변환 관계가 있습니다. 세부 사항은 다음과 같습니다:

OracleVARCHAR2, NVARCHAR2, LONGCHAR NUMBER FLOATDATETIMESTAMPCLOBBLOB
cx_Oracle Python
cx_Oracle.STRING str
cx_Oracle.FIXED_CHAR str
cx_Oracle.NUMBER int
cx_Oracle.NUMBER float
cx_Oracle.DATETIME 날짜 시간.날짜시간
cx_Oracle.TIMESTAMP datetime.datetime
cx_Oracle.CLOB cx_Oracle.LOB
cx_Oracle.BLOB cx_Oracle.LOB

위 내용은 Python이 cx_Oracle을 사용하여 Oracle 저장 프로시저를 호출하는 방법의 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.