Uw probleem zit niet in de hoeveelheid gegevens per se , het is dat sommige van je tuples numpy.int64
. bevatten waarden die niet direct kunnen worden gebruikt als parameterwaarden voor uw SQL-instructie. Bijvoorbeeld
a = numpy.array([10, 11, 12], dtype=numpy.int64)
params = (1, 1, a[1], 1, 1, 1)
crsr.execute(sql, params)
zal gooien
omdat de derde parameterwaarde een numpy.int64
. is element uit je numpy array a
. Die waarde converteren met int()
zal het probleem vermijden:
a = numpy.array([10, 11, 12], dtype=numpy.int64)
params = (1, 1, int(a[1]), 1, 1, 1)
crsr.execute(sql, params)
Trouwens, de reden dat
sql = 'SET GLOBAL max_allowed_packet=50*1024*1024'
cursor.execute(sql)
niet werkte, is dat max_allowed_packet
is een MySQL-instelling die geen enkele betekenis heeft voor Microsoft SQL Server.