2009-06-01 61 views

回答

1

我设法用cx_Oracle做到这一点。

我在用XMLTYPE字段插入表中的行的语句中使用了sys.xmltype.createxml()函数;那么我使用prepare()和setinputsizes()来指定用于XMLTYPE字段的绑定变量是cx_Oracle.CLOB类型。

0

(编辑删除提及的非Oracle Python DB-API模块,并添加一些更相关和希望有用的信息)。

不知道任何替代cx_oracle(作为DCOracle2作者says,“DCOracle2目前没有维护,并没有支持可用。”所以它不是一个真正的替代品)。但是,Oracle自己的站点上最近的一个article声称(至少在最近发布的版本中,例如Oracle 10g XE - 可能是最近的cx_oracle版本),Python可以与Oracle的XML支持一起工作 - 我不知道那篇文章中的例子可以帮助你解决你的问题,但我确实希望如此!

+0

这似乎是为PostgreSQL,而不是Oracle ... – 2009-06-01 20:29:28

1

我设法得到这个由包裹在通话中的XMLElement调用工作XMLType.GetClobVal()

例如:

select xmltype.getclobval(xmlelement("rowcount", count(1))) 
from... 

局限性不知道还没有,但它让我摆脱困境。在Oracle网站上找到相关信息: Mastering Oracle+Python, Part 1: Querying Best Practices