【问题标题】:Read Clob from JayBeDeAPI Query从 JayDeBeAPI 查询中读取 Clob
【发布时间】:2015-08-24 23:02:50
【问题描述】:

我正在使用 python 的 jaybedeapi 连接到 Oracle 数据库。一切似乎都运行良好,除非我遇到带有 oracle.sql.clob 数据的字段:

连接&查询:

conn = jaydebeapi.connect('oracle.jdbc.OracleDriver','jdbc:oracle:thin:user/pass@host:port:db')

cur = conn.cursor()

cur.execute("select * from table")

data = cur.fetchmany(size=10)

print data[0][1] 

返回:

<jpype._jclass.oracle.sql.CLOB at 0x5fe83d543c92>

如何打印这些字段中的值?

编辑:

我不希望在 select 语句中显式调用每个字段 DBMS_LOB.substr(field,3000)(有效)。如果可能的话,我宁愿直接在 python 中有一个解决方案。

【问题讨论】:

标签: python oracle jaydebeapi


【解决方案1】:

这对我有用:

db_result = data[0][1]
print db_result.getSubString(1, db_result.length())

我在 Win 7/64 上使用 jaydebeapi 版本 0.2.0 和 jpype 0.5.7,Python 2.7.10/32。在这里找到了解决方案:http://almostflan.com/t/embedclob/ 虽然我没有遇到他遇到的自动提交问题。

【讨论】:

    猜你喜欢
    • 2020-11-23
    • 1970-01-01
    • 2018-08-11
    • 2013-08-17
    • 2012-05-18
    • 1970-01-01
    • 2015-03-02
    • 2019-07-25
    • 1970-01-01
    相关资源
    最近更新 更多