鱼C论坛

 找回密码
 立即注册
查看: 2052|回复: 2

db2数据库,怎么按行读取并做一些判断,然后读取下一行啊

[复制链接]
发表于 2021-3-3 13:42:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
求助,工作中遇到一个问题,一个表中字段cocusnam可能含有非法字符,导致通过odbc无法download该表,想做一个小工具,逐行判断表中该字段是否合法,如果不合法,则记录该行的key,然后继续读取并判断下一行。
最后输出所有非法记录的key。

con_string = "Driver={iSeries Access ODBC Driver};System=" + sys + ";Database=" + sys + ";UID=" + user_id + ";pwd=" + password + ";SSL=NO;SLATE=0"
cnxn = pyodbc.connect(con_string)
cur = cnxn.cursor()

s1 = 'SELECT cocusnam FROM NKXPRTEMP.WW03CUS'

result = cur.execute(s1).fetchone()
cnxn.close()

for i in range(0, len(result)):
    print(result[i][0])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-3-3 13:45:47 | 显示全部楼层
由于非法字符原因,导致出现data error:
C:\Users\Documents\PY\venv\Scripts\python.exe C:/Users/Documents/PY/test/CHN.py
Traceback (most recent call last):
  File "C:/Users/Documents/PY/test/CHN.py", line 13, in <module>
    result = cur.execute(s1).fetchone()
pyodbc.DataError: ('22018', '[22018] [IBM][System i Access ODBC Driver]Error in assignment. (30019) (SQLGetData)')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-4 07:45:02 From FishC Mobile | 显示全部楼层
本帖最后由 wp231957 于 2021-3-4 07:48 编辑
OUIWW 发表于 2021-3-3 13:45
由于非法字符原因,导致出现data error:
C:%users\Documents\PY\venv\Scripts\python.exe C:/Users/Docume ...


哦搞错了,不过答案没啥改变,就是这个数据库一般人都不会用,如果你真的有需求,就只能自己慢慢琢磨了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-16 07:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表