首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django DecimalField max_digits的最大值是多少?

Django DecimalField max_digits的最大值是多少?
EN

Stack Overflow用户
提问于 2020-01-08 03:37:54
回答 2查看 3K关注 0票数 2

嗨,我正在设计我的模型,其中包含一个字段,它应该存储一个非常大的整数。为什么这么大?因为当前端将数据发送到服务器时,浮点数被转换为整数(例如: 2.44444444将被转换为244444444)。

我使用的数据库是MySql

通过阅读Django 模型字段文档,我看到bigintegerfield只支持高达9223372036854775807,即19位(64位)。恐怕这还不够,所以我认为我应该使用DecimalField,因为它像这样支持max_digits:

DecimalField(max_digits=40,decimal_places=0,default=0) #它的作用就像一个整数,因为decimal_place=0

但是我不知道max_digits的最大值是多少,因为它似乎没有在文档中提到它,而且我在googling之后仍然找不到关于它的任何信息。

如果有人知道max_digits在DecimalFields中的最大数量,这将是一个很大的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-01-08 03:42:05

如果您使用的是MySQL,则最大位数为65。小数点右边的数字数最多可达30:

https://dev.mysql.com/doc/refman/5.7/en/precision-math-decimal-characteristics.html

对于PostgreSQL,小数点之前的数字高达131072位,小数点之后的数字高达16383位:

https://www.postgresql.org/docs/10/datatype-numeric.html

SQLite没有真正的十进制内部类型。

票数 2
EN

Stack Overflow用户

发布于 2022-11-14 10:57:27

max_digits必须相等,或高于decimal_places

如果要有123456.654321,就必须定义max_digits=12, decimal_places=6.

max_digits包括decimal_places

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59639092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档