22

integer out of rangeデータベースを SQLite から PostgreSQL に移行しようとすると、エラーが発生します。

問題を特定できたと思いますIntegerField。モデルのフィールドに巨大な整数がいくつかあります。

基本的に52675215334のオーダーです。

この値を 1 などの小さな数値に変更してからデータベースを移行しようとすると、すべて問題ありません。

これらの大きな値を格納するために IntegerField 以外に使用する必要がある他のデータ型はありますか?

4

3 に答える 3

34

整数がそれほど大きい場合は、 BigIntegerFieldを使用してみてください。ドキュメントから:

-9223372036854775808 から 9223372036854775807 までの数値に適合することが保証されていることを除いて、IntegerField によく似た 64 ビット整数です。管理者はこれを<input type="text">(単一行入力) として表します。

于 2012-07-02T23:50:04.463 に答える
0

これを試して

models.IntegerField()models.BigIntegerField( ) に変更します

class TableName(models.Model):
    ColumnName= models.BigIntegerField(default=0)
于 2022-01-20T11:26:47.983 に答える