1
DjangoアプリケーションをMySQLデータベースに接続しようとしています。私はデータベースを作成し、python manage.py migrate
でアプリを移行しようとしました。この時点で私は次のエラーを受け取ります:Djangoアプリケーションを移行できません - MySQLがOperationalErrorをスローしました "大きすぎます"
django.db.utils.OperationalError: (1425, "Too big scale 100 specified for column 'score'. Maximum is 30.")
models.py
のオブジェクトを確認しました。それは次のようになります。
class Para(models.Model):
...
text = models.CharField(max_length=20000)
score = models.DecimalField(max_digits=100, decimal_places=5)
def __unicode__(self):
return self.text[:20]
だから私はmakemigrations
を実行し、再び移行しようとした、20にmax_digits
を変更しました。しかし、私は同じエラーが発生し続けます。私はMySQLには新しく、私が間違っていることを確信していません。
ご迷惑をおかけして申し訳ございません。ありがとう!前回の移行があなたのサーバが窒息されているものであるため、(既に判明しているとして)
ありがとう、それでした。 BLOBを数えずに使用されているテーブルタイプの最大行サイズは65535です。これにはストレージオーバーヘッドが含まれていますので、マニュアルを確認してください。いくつかの列をTEXTまたはBLOB ' "しかし、最初のものはなくなってしまった! – aaravam
'text = models.CharField(max_length = 20000)'のようなフィールドを使うと、最大行サイズを使い果たしてしまう可能性があります。あなたのフルモデルで別の質問を投稿してください。 – e4c5