Masalah Anda bukan pada volume data per se , beberapa tupel Anda mengandung numpy.int64
nilai yang tidak dapat digunakan secara langsung sebagai nilai parameter untuk pernyataan SQL Anda. Misalnya,
a = numpy.array([10, 11, 12], dtype=numpy.int64)
params = (1, 1, a[1], 1, 1, 1)
crsr.execute(sql, params)
akan melempar
karena nilai parameter ketiga adalah numpy.int64
elemen dari array numpy Anda a
. Mengonversi nilai tersebut dengan int()
akan menghindari masalah:
a = numpy.array([10, 11, 12], dtype=numpy.int64)
params = (1, 1, int(a[1]), 1, 1, 1)
crsr.execute(sql, params)
Omong-omong, alasan
sql = 'SET GLOBAL max_allowed_packet=50*1024*1024'
cursor.execute(sql)
tidak berhasil adalah max_allowed_packet
adalah pengaturan MySQL yang tidak memiliki arti apa pun untuk Microsoft SQL Server.