使用cx_Oracle和ORA-22922错误访问LOB值

时间:2013-08-13 18:40:39

标签: python oracle cx-oracle

我正在尝试访问具有cx_Oracle的过程返回的LOB的值。 LOB是元组的第一个字段('reg[0]')。

当我这样做时:

regs = cursor.fetchall()
for reg in regs:
    print reg[0]

发生以下错误:

DatabaseError: ORA-22922: nonexistent LOB value

当我尝试使用read()方法(reg[0].read()而不是print reg[0])时,但错误是一样的。

在这种情况下如何访问LOB值?

1 个答案:

答案 0 :(得分:0)

我正在使用sqlalchemy Session并直接在Session中执行命令而不是游标。

当我创建游标并执行cursor.execute(procedure)时,我可以根据需要使用read()方法访问LOB内容。