【发布时间】:2017-05-08 16:29:22
【问题描述】:
当我连接到 HFSQL 数据库以使用 python 中的 pypyodbc 模块和以下代码检索一组数据时
import pypyodbc
connection = pypyodbc.connect( "DSN=odbc_name" )
cursor = connection.cursor()
cursor.execute( "select * from cli" )
result = cursor.fetchall()
我得到“invalid literal for int() with base 10”错误,这个问题的根源是某些列的空值,除了修改数据库表中的空数据之外的任何解决方法。
【问题讨论】:
-
哪一行产生了错误?
-
result = cursor.fetchall() 是产生错误的行,因为我使用的是 ipython(意思是逐行执行)我确定。
-
游标不是可迭代的吗,可以让您执行
for entry in cursor之类的操作,然后逐个捕获并修复错误? -
据我所知,检索数据的过程并不像你说的那样游标有很多方法,比如 fechone() 不同的是返回的行数,一旦你声明一个变量结果为 I如上所述,您可以对其进行迭代以逐一检索行
标签: python sql database pypyodbc