2017-05-05 87 views
0

我有一個PL/SQL object,我想在Python中填充並傳遞到PL/SQL過程。cx_Oracle如何在PL/SQL對象類型上設置CLOB成員屬性?

PL/SQL對象類型:

CREATE TYPE t_foo (
    name VARCHAR2(10), 
    data CLOB, 
); 

的Python:

obj_type = conn.gettype('t_foo') 
o = obj_type.newobject() 

o.NAME = 'test' 
# Raises NotSupportedError: Object_ConvertFromPython(): unhandled data type 112 
o.DATA = 'big string' 

blobvar = cur.var(cx_Oracle.CLOB) 
blobvar.setvalue(0, 'big string') 
# Raises NotSupportedError: Object_ConvertFromPython(): unhandled data type 112 
o.CONTENTS = blobvar 

有什麼辦法來設置一個對象的CLOB?

回答

1

對此的支持已添加到cx_Oracle的源代碼中,可以在此處找到:https://github.com/oracle/python-cx_Oracle。一個版本將在下個月左右發佈,但同時你可以從克隆版本庫中構建自己的版本。