Я пытаюсь использовать 2-символьное поле, которое можно обнулять для таблицы адресов в MySQL. Когда я запускаю команду manage.py syncdb, она загружает мои данные в таблицу MySQL, но выдает ошибку:
Файл "C: \ Python27 \ lib \ site-packages \ MySQLdb \ connections.py", строка 36, в defaulterrorhandler вызывает повышение errorclass, errorvalue DatabaseError: (1406, "Данные слишком длинные для столбца 'state_province' в строке 1" )
Я обнаружил, что проблема заключается в том, что Django вставляет в таблицу строку "(NULL)" вместо значения NULL для SQL.
В поле "state_province" указано значение null = True, пусто = True в определении модели длиной 2.
Вот примерный набор данных:
- model: myapp.Address
pk: 53
fields:
street_address: "71 South St"
city: cityname
state_province:
zip_code: 25455
countryID: 199
time_zone: -6
- model: myapp.Address
pk: 54
fields:
street_address: "123 lake street"
city: Townname
state_province: NH
zip_code: 12345
countryID: 199
time_zone: -5
РЕДАКТИРОВАТЬ: я забыл связать, этот вопрос на самом деле именно то, что происходит, но я не знаю, как исправить это поведение в Django, или с чего начать:
Вставка null в char (1)