我想为datetime创建一个cx_Oracle数组变量,然后我可以使用它来提供callproc。所以我期望的代码是这样的:
dt1 = datetime.datetime.strptime('2012/07/30 10:42:09', '%Y/%m/%d %H:%M:%S')
dt2 = ...(another datetime value)...
av1 = cursor.arrayvar(cx_Oracle.DATETIME, [dt1, dt2])
av2 = ...(another arrayvar)...
cursor.callproc('my_db_procedure', (av1, av2))
但是我一直收到这个错误:
PLS-00306: wrong number or types of arguments in call to 'my_db_procedure'
有人可以指出我做错了吗?
答案 0 :(得分:1)
TYPE id IS TABLE OF varchar2(16);
实际应该是:
TYPE id IS TABLE OF varchar2(16) INDEX BY BINARY_INTEGER;
我希望这可以帮助有类似问题的人。