gpt4 book ai didi

python - cx_Oracle 和输出变量

转载 作者:太空狗 更新时间:2023-10-29 21:44:42 25 4
gpt4 key购买 nike

我正尝试在 Oracle 10 数据库中再次执行此操作:

cursor = connection.cursor()
lOutput = cursor.var(cx_Oracle.STRING)
cursor.execute("""
BEGIN
%(out)s := 'N';
END;""",
{'out' : lOutput})
print lOutput.value

但是我得到了

DatabaseError: ORA-01036: illegal variable name/number

是否可以通过这种方式在cx_Oracle中定义PL/SQL block ?

最佳答案

是的,您可以执行匿名 PL/SQL block 。输出参数的绑定(bind)变量格式不正确。它应该是 :out 而不是 %(out)s

cursor = connection.cursor()
lOutput = cursor.var(cx_Oracle.STRING)
cursor.execute("""
BEGIN
:out := 'N';
END;""",
{'out' : lOutput})
print lOutput

产生输出:

<cx_Oracle.STRING with value 'N'>

关于python - cx_Oracle 和输出变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2698008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com