I have a stored procedure that has a single output parameter. Why do I have to pass it a string big enough to hold the value it is to receive? Why can't I pass an empty string or None?
>>> import cx_Oracle as oracle >>> connection = oracle.connect('usr/[EMAIL PROTECTED]') >>> cursor = connection.cursor() >>> network_name, = cursor.callproc('my_pkg.get_network_name_sp', ('',)) Traceback (most recent call last): File "<interactive input>", line 1, in ? DatabaseError: ORA-06502: PL/SQL: numeric or value error: character string buffer too small ORA-06512: at "USR.MY_PKG", line 35 ORA-06512: at line 1 The following works fine, but I don't like having to do it: >>> network_name, = cursor.callproc('my_pkg.get_network_name_sp', (' ' * 32,)) Am I missing something obvious here? -- http://mail.python.org/mailman/listinfo/python-list