2012-07-02 14 views
10

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

私はこの問題を正確に指摘していると思います。モデルのIntegerFieldフィールドにいくつかの巨大な整数があります。

基本的に私は私のデータベースを移行しようとした後、1のような小さな数に、この値を変更し、52675215334.

の順に、すべての罰金です。

これらの大きな値を格納するためにIntegerField以外を使用しなければならない他のデータタイプはありますか?

+1

が重複する可能性(http://stackoverflow.com/questions/283724/big-integer-field-in-django-models) – FogleBird

+1

これらの数字が収まることができるよりも大きくなっています32ビットint。 "bigint"を試してください。http://www.postgresql.org/docs/8.2/static/datatype-numeric.html –

+1

SQLiteには、<ダーティ参照をここに挿入>よりも余裕があります。 –

答えて

17

整数がの場合、が大きい場合は、BigIntegerFieldを試してみてください。ドキュメントから:

64ビット整数、はるかにIntegerFieldとのような、管理を9223372036854775807する-9223372036854775808から数値に適合することが保証されていることを除いて<input type="text">(シングルライン入力)として、これを表します。

[Djangoのモデルでビッグ整数フィールド]の
+1

ありがとう...私は実際にはURLに追加するために使用されているので、CharFieldとして値を格納することができたことに気付きましたが、これも有効でした。 – user1328021

関連する問題