バージョン:DjangoのDateTimeField型は、PostgreSQLにナイーブと認識してタイムスタンプフィールドと散らかった
ジャンゴ1.11
のPostgreSQL 9.6(AWS RDS)
Djangoのsettings.py:
TIME_ZONE =「アジア/ Seoul '
USE_TZ = False
私の問題:
昨年私のdjangoアプリは、データベースをMySQLからPostgreSQLに移行しました。それは大丈夫だった。しかし、私は大きな問題を見つけました。
MySQLで生成されたテーブルのDateTimeFieldは、PostgreSQLのタイムゾーンなしのナイーブタイムスタンプフィールドに相当します。しかし、PostgreSQLで生成されたテーブルはDateTimeFieldを持っています。これは認識タイムスタンプフィールド(タイムゾーン付き)に対応しています。タイムスタンプはすべてUTCで保存されます。
したがって、My DBテーブルは、ナイーブかつ認識可能なタイムスタンプフィールドで乱雑でした。
どうすればこの問題を解決できますか?
以下は、私が考えるソリューション、
が意識タイムスタンプフィールドにナイーブタイムスタンプフィールドを変換します。 ベストプラクティスだと思います。しかし、素朴なタイムスタンプフィールドはあまりにも多くあります。私は変換のためにデータが失われてしまうのではないかと心配しています。
認識タイムスタンプフィールドをナイーブタイムスタンプフィールドに変換します。 私はそれが簡単な方法の一つだと思います。しかし、素朴なタイムスタンプフィールドは実践的ではないと聞きました。
何も変更されていません。実際に、私はDBを調べるまで、タイムスタンプフィールドが乱雑であるかどうかはわかりませんでした。 Djanoアプリケーションがうまくいきました。しかし、私は心配しています。
AWS RDSのタイムゾーン設定を変更します。それは可能なのでしょうか?
私の貧しい私の英語のために申し訳ありません。ご意見をお聞かせください。
ありがとうございました。すべてのタイムスタンプフィールドをナイーブからアイドルに変換することにしました。 – user3586239