【问题标题】:Django MySQL Out of range value for column 'telephone' at row 1第 1 行的“电话”列的 Django MySQL 超出范围值
【发布时间】:2013-03-03 00:09:59
【问题描述】:

我到处寻找解决这个问题的方法,因为我无法输入特定大小的整数。

在其他帖子中,人们建议我定义一个自定义 BigInteger 类,但这不是很有帮助。使用模型中的默认 BigInteger 类似乎也不能解决问题。它仍然给我错误

“第 1 行的“电话”列的值超出范围”

有没有人知道如何解决它??

谢谢!

【问题讨论】:

  • 您尝试设置什么值,您是否在更改模型定义后使用 synbdb 重新创建了架构?
  • 是的。因此,在我的模型中,我有 phone = models.BigIntegerField() 但每当我输入像 5107008465 这样的电话号码并使用该电话创建用户时,它都会抱怨上面的消息。我尝试通过 sqlclear 删除表并使用 syncdb 重新创建架构,但没有成功。
  • sqlclear 只会打印出DROP TABLE 语法,它不会真正为你执行它。
  • 那我是不是一定要登陆mysql手动操作?
  • 当我执行“python manage.py sqlclear food”,其中 food 是表的名称时,它只会打印出“BEGIN; DROP TABLE food_favs; DROP TABLE food_user; COMMIT;”但是当我登录到 mysql 并输入 DROP TABLE 'food_user';它说没有选择数据库....

标签: mysql sql database django datatable


【解决方案1】:

我通常将电话号码保存为字符串 (CharField)。如果您以后使用国际电话号码,则“+15554441234”之类的号码应该是有效的。这就是为什么我认为字符串是更好的选择。

【讨论】:

    猜你喜欢
    • 2013-10-07
    • 2021-05-06
    • 1970-01-01
    • 2016-09-24
    • 2018-04-19
    • 2011-05-12
    • 1970-01-01
    • 1970-01-01
    • 2011-12-31
    相关资源
    最近更新 更多