Mysql 从django保存十进制值

Mysql 从django保存十进制值,mysql,django,django-models,django-forms,decimal,Mysql,Django,Django Models,Django Forms,Decimal,今天我面临这样一个问题。我有一个带有decimalfield字段的Django表单和一个带有decimalfield字段的模型 UPD: 当我用值1000000.00填充表单字段并保存它时,在mysql中我看到它被保存为99999.99 有什么问题吗 已解决:我的数据库未同步。在MySQL中,字段被声明为十进制(7,2)。 保存的值是99999.99,而不是我所理解的999999.99 您使用的是什么版本的MySQL?我无法在本地计算机上复制该问题。对于使用readline 6.2的debian

今天我面临这样一个问题。我有一个带有decimalfield字段的Django表单和一个带有decimalfield字段的模型

UPD:

当我用值1000000.00填充表单字段并保存它时,在mysql中我看到它被保存为99999.99

有什么问题吗

已解决:我的数据库未同步。在MySQL中,字段被声明为十进制(7,2)。
保存的值是99999.99,而不是我所理解的999999.99

您使用的是什么版本的MySQL?我无法在本地计算机上复制该问题。对于使用readline 6.2的debian linux gnu(x86_64),版本为14.14发行版5.1.58,我知道了。我的数据库没有同步。在MySQL中,字段被声明为十进制(7,2)。保存的值是99999.99,而不是我所理解的999999.99。
class Payment(models.Model):
    txn_id = models.DecimalField(unique=True, db_index=True, max_digits=28, decimal_places=0, verbose_name=_('transaction ID'))
    sum = models.DecimalField(max_digits=18, decimal_places=2, verbose_name=_('amount'))
    txn_date = models.DateTimeField(verbose_name=_('date'))
    account = models.CharField(max_length=50, verbose_name=_('account ID'))

    created_on = models.DateTimeField(auto_now_add=True, editable=False)

class PaymentForm(PaymentIdForm):
    command = forms.ChoiceField(choices=[(x, x) for x in COMMANDS])
    sum = forms.DecimalField(max_digits=18, decimal_places=2, min_value=1)
    txn_date = forms.DateTimeField(input_formats=['%Y%m%d%H%M%S'], required=False)