您的问题不在于数据 量本身 ,而是某些元组包含
numpy.int64不能直接用作SQL语句的参数值的值。例如,
a = numpy.array([10, 11, 12], dtype=numpy.int64)params = (1, 1, a[1], 1, 1, 1)crsr.execute(sql, params)
会抛出
ProgrammingError :(“参数类型无效。param-index= 2 param-type = numpy.int64’,’HY105’)
因为第三个参数值是
numpy.int64numpy数组中的元素
a。使用转换该值
int()将避免出现以下问题:
a = numpy.array([10, 11, 12], dtype=numpy.int64)params = (1, 1, int(a[1]), 1, 1, 1)crsr.execute(sql, params)
顺便说一下
sql = 'SET GLOBAL max_allowed_packet=50*1024*1024'cursor.execute(sql)
没用的是,这
max_allowed_packet是一个MySQL设置,对Microsoft SQL Server没有任何意义。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)