首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用cx_Oracle和Python执行存储在.sql文件中的PL/SQL代码

问如何使用cx_Oracle和Python执行存储在.sql文件中的PL/SQL代码
EN

Stack Overflow用户
提问于 2019-11-20 20:13:02
回答 1查看 81关注 0票数 0

我的要求是使用python执行存储在多个.sql文件中的PL/SQL代码。

我的假设是"curs.execute(sql_command)“可以工作,但问题是我还必须将输入参数传递给该过程。

请让我知道如何使用python执行存储在.sql文件中的存储过程,而且所有的存储过程都存储在单独的文件中,即每个文件只包含一个存储过程。

EN

回答 1

Stack Overflow用户

发布于 2019-11-21 07:50:46

如果每个存储过程都存储在单独的.sql文件中,则非常简单:

代码语言:javascript
复制
sql = open(fileName).read()
connection = cx_Oracle.connect("user/password@dsn")
cursor = connection.cursor()
cursor.execute(sql)

但是,请注意,如果存储在文件中的SQL包含尾随斜杠(/),则需要首先删除该斜杠。同样,如果存储在文件中的SQL不是存储过程,而是create table语句,则需要去掉尾随的分号(;)。

如果您需要调用存储过程,可以执行以下操作:

代码语言:javascript
复制
cursor.callproc("TheProcedureName", (arg1, arg2, arg3))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58954091

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档