既存のデータベースのORMを手動で作成してデータベースリフレクションを使用する賛否両論は何ですか?既存のデータベースのORMを手動で作成する長所と短所はありますか?
SQLAlchemyを使用して既存のデータベースにアクセスするコードをいくつか書いています。私はsqlalchemy.ext.automap
を使用して、スキーマを自動的に反映し、マッピングを作成できることを知っています。
しかし、マッピングクラスを手動で作成することに大きなメリットがあるのか、それともautomapにマジックを与えるのかが疑問です。
重要な利点がある場合には、Djangoのinspectdb
のようなPythonのマッピングクラスを自動生成SQLAlchemyのことができますか?そうすれば、すべての宣言ベースマッピングをより速く作成することができます。なぜなら、最初から書き込むのではなく、検証と微調整だけで済むからです。
編集: @iuridinizは以下のように、Djangoのinspectdb
を模倣するいくつかのソリューションがあります。 Is there a Django's inspectdb equivalent for SQLAlchemy?を参照してください。そのスレッドの答えはPython3と互換性がないので、実際に維持されているものを探しているのならsqlacodegenまたはflask-sqlacodegenを調べてください。
[SQLAlchemyのDjangoのinspectdbに相当するものはありますか?](http://stackoverflow.com/questions/1794564/is-there-a-djangos-inspectdb-equivalent-for-sqlalchemy) – iuridiniz
ありがとうそれ!それで、質問の後半が面倒です。前半の考えは? – dthor