最近在用Python编写连接数据库获取记录的脚本,其中用到了cx_Oracle模块。它的语法主要如下:
cx_Oracle.connect('username','pwd','IP/HOSTNAME:PORT/TNSNAME') import cx_Oracle db1=cx_Oracle.connect('yang','yang','127.0.0.1:1523/yangdb') db2=cx_Oracle.connect('yang/yang@127.0.0.1:1523/yangdb') 对于dsn 方式: makedsn(IP/HOST,PORT,TNSNAME) dsn=cx_Oracle.makedsn('127.0.0.1','1523','yangdb') db3=cx_Oracle.connect('yang','yang',dsn) 例子: oracle@rac3:/home/oracle/python>vim conndb4.py import cx_Oracle username = "yang" pwd = "yang" --建立连接 dsn=cx_Oracle.makedsn('127.0.0.1','1523','yangdb') db1=cx_Oracle.connect(username,pwd,dsn) --获取游标 cursor = db1.cursor() --执行查询 sql = "select * from tab" cursor.execute(sql) --获取数据 ,可以有多种方式 fetchall(),fetchmang(N)(N 为正整数),fetchone() result = cursor.fetchall() count = cursor.rowcount
在自己进行cursor.fetchall()操作后,得出result如下:
('HAD_ZYBJ_420_0003', 'HAD_LINK_TEMPLATE', 'TYPE', 1, 'LINK_PID', None, 'TYPE', '值域检查', '道路基本属性检查', 'Fatal', 'TYPE字段存在非0、1、2的值', <cx_Oracle.LOB object at 0x00000000071E2170>) ('HAD_ZYBJ_420_0004', 'HAD_LINK_TEMPLATE', 'LANE_NUM', 1, 'LINK_PID', None, None, '非空检查', '道路基本属性检查', 'Fatal', 'LANE_NUM字段不能为空', <cx_Oracle.LOB object at 0x00000000071E2190>) ('HAD_ZYBJ_420_0005', 'HAD_LINK_TEMPLATE', 'SEQ_NUM', 1, 'LINK_PID', None, None, '非空检查', '道路基本属性检查', 'Fatal', 'SEQ_NUM字段不能为空', <cx_Oracle.LOB object at 0x00000000071E21B0>) ('HAD_ZYBJ_420_0006', 'HAD_LINK_TEMPLATE', 'WIDTH', 1, 'LINK_PID', None, None, '非空检查', '道路基本属性检查', 'Fatal', 'WIDTH字段不能为空', <cx_Oracle.LOB object at 0x00000000071E21D0>) 。。。
这其中有clob字段。搜寻了半天,有应用dbms_lob.substr(clob字段,4000,1)这种方法容易报错,并且和其他字段一起选择时,出现字符缓冲区不足的问题。
之后又找到方法说新建个字段然后利用这个dbms_lob的方法将clob字段转换为一个新的temp字段。但是这个方法你无法确定选取多长的字符串。
最后通过询问后才发现原来问题出现在我使用了cursor.fetchall()这个方法,只需要我在fetchall之前对cursor进行操作,即:
cursor.execute(sql) for row in cursor: print(row[11])#或者print(row[11].read()),row[11]是clob字段
问题解决!
以上这篇Python如何应用cx_Oracle获取oracle中的clob字段问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月18日
2024年11月18日
- 【雨果唱片】中国管弦乐《鹿回头》WAV
- APM亚流新世代《一起冒险》[FLAC/分轨][106.77MB]
- 崔健《飞狗》律冻文化[WAV+CUE][1.1G]
- 罗志祥《舞状元 (Explicit)》[320K/MP3][66.77MB]
- 尤雅.1997-幽雅精粹2CD【南方】【WAV+CUE】
- 张惠妹.2007-STAR(引进版)【EMI百代】【WAV+CUE】
- 群星.2008-LOVE情歌集VOL.8【正东】【WAV+CUE】
- 罗志祥《舞状元 (Explicit)》[FLAC/分轨][360.76MB]
- Tank《我不伟大,至少我能改变我。》[320K/MP3][160.41MB]
- Tank《我不伟大,至少我能改变我。》[FLAC/分轨][236.89MB]
- CD圣经推荐-夏韶声《谙2》SACD-ISO
- 钟镇涛-《百分百钟镇涛》首批限量版SACD-ISO
- 群星《继续微笑致敬许冠杰》[低速原抓WAV+CUE]
- 潘秀琼.2003-国语难忘金曲珍藏集【皇星全音】【WAV+CUE】
- 林东松.1997-2039玫瑰事件【宝丽金】【WAV+CUE】