ошибка записи python mysql

#python #mysql #try-catch

#python #mysql #попробуйте-поймайте

Вопрос:

У меня есть скрипт, который работает с CSV-файлом и выводит его в базу данных mysql. Все работает хорошо, но с новым файлом я получаю странную ошибку, которая не отслеживается последовательностью попыток / ошибок, которая приведена чуть ниже —

 try:
rtn = csr.execute (strg)

db.commit()
print "Successfully processed record "   str(row_index)   " with entryno="       
entryno

except mdb.Warning, e:
print "Warning %d %s " % (e.args[0] , e.args[1])
print "Successfully processed record "   str(row_index)

except mdb.Error , e:
print "Error %d %s " % (e.args[0] , e.args[1])
print "Failed to process record "   str(row_index)
#       sys.exit() (or what you want to do if an error occurs)
  

в syserr я получаю следующее смешанное сообщение между моим sysout —

 Successfully processed record 3220 witload-pur2.py:135: Warning: Data truncated for column 'price' at row 1
  rtn = csr.execute (strg)
  h entryno=579848
  

Я думал, что это ошибка в записи (хотя я не смог найти ее в записи или окружающих ее). Как мне поймать это и исправить??

Ответ №1:

Это предупреждение означает, что price столбцу присвоен тип данных, который недостаточно велик для значения, которое вы пытаетесь сохранить. Как объявлен price столбец?