0

使用 callproc() 调用带参数的存储过程时出现错误。

cur.callproc("TEST.manage_partitions_pkg.test", ["to_date('20120525', 'YYYYMMDD')", 1,     "tablename_type('MESSAGE', 'VALID_MESSAGE')", True, True])

但它似乎无法识别 SQL 参数。我是否需要以某种方式将 SQL 参数转换为 python?如果是这样,那将如何进行?

4

1 回答 1

2

您的第一个参数应该是一个cx_Oracle.Date对象,您可以使用cx_Oracle.Date(2012, 5, 25). 我采用的第三个参数只是一个字符串,您不希望它是一个函数调用,如果是,您可以使用cur.callfunc('tablename_type', ReturnType, ['MESSAGE', 'VALID_MESSAGE'])它并将其内联到您的过程调用中。

于 2012-06-15T12:56:41.303 回答