2016-08-04 123 views
2

我正在使用python从Oracle DB中获取数据。所有的行都有一个包含XML数据的列。当我使用python打印从Oracle DB中获取的数据时,包含XML数据的列被打印为0x7fffe373b960处的 - cx_Oracle.OBJECT对象等。我甚至将数据转换为pandas数据框,并且仍然将此列的数据打印为cx_Oracle。 OBJECT对象在0x7fffe373b960。我想访问存储在此列中的键值数据(XML文件)。Python,Oracle数据库,列中的XML数据,提取cx_Oracle.Object

回答

2

请阅读内置评论。

cursor = connection.cursor() # you know what it is for 

# here getClobVal() returns whole xml. It won't work without alias I don't know why. 
query = """select a.columnName.getClobVal() from tablename a""" 

cursor.execute(query) #you know what it is for 

result = cursor.fetchone()[0].read() # for single record 

result = cursor.fetchall() # for all records 
for res in result: 
    print res[0].read()