【发布时间】:2017-01-17 23:42:09
【问题描述】:
我已经阅读了几乎所有其他具有相同错误的帖子,但似乎找不到合适的解决方案。
在我的 models.py 文件中,我有这个:
class LetsSayCups(models.Model):
name = models.CharField(max_length=65535)
def __str__(self):
return str(self.name)
当我尝试将 aws mysql 数据加载到本地 mysql 服务器时出现此错误。我的 models.py 文件中的另一部分出现了问题,我能够解决它的方法是进入 my.cnf.bak 文件并将 sql_mode 更改为:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
到:
sql_mode=''
成功了!!!直到后来我发现另一个错误。具体的错误是这样的:
...
File "/Users/im_the_user/Desktop/my_company/my_project/load_items.py", line 122, in load_the_items
existing_cups = Cups.objects.get_or_create(name=cups)
...
django.db.utils.DataError: (1406, "Data too long for column 'name' at row 1")
上面的......表示事情发生在我在此之前/之后发生的事情。
更新 my.cnf.bak 文件还不够,将 CharField 的 max_length 设置为 65535 也不够。我还能尝试什么?
【问题讨论】:
-
使用 TextField 代替 CharField
标签: python mysql django pycharm