2009-06-01 65 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