
独自の給与計算エンジンを Web サイトとして作成したいと考えています。Oracle ERP アプリケーションでは、テーブルに開始日と終了日を設定するのが一般的で、時間の経過と共に値を変化させることができます。開始日と終了日は、ID とともにテーブルの主キーにもなります。
これにより、一時的な変更 (時間の経過に伴う変更) が可能になります。通常、時間の重複を防ぐために追加の検証も必要です。もう 1 つの問題は、その時間範囲にデータが存在しない時間にクエリを実行し、最も近いまたは最後の既存の時間範囲にジャンプする必要がある場合があることです。
Oracleの最新データベースリリースでは、時間的な妥当性がようやく実現しました。このリンク; しかし、たとえば Oracle APEX にはまだ導入されていません。
確かに、値を取得する時間を指定することは、特に給与や住所などの時間指定の場合、多くの人が望むことのはずです。
なぜ Web 開発フレームワーク (具体的には SQL Alchemy と Postgresql を使用した Python Flask) とそのチュートリアルでは、このような時間データを処理する方法が示されないのでしょうか。それとも、すぐに利用できるものを見逃しているのでしょうか。または、自分で書く以外に、この事実を変えるために何ができるでしょうか。自分で書くことは絶対にしませんが。
答え1
なぜ Web 開発フレームワーク (具体的には SQLAlchemy と PostgreSQL を使用した Python Flask) とそのチュートリアルでは、時間データを処理する方法が示されないのでしょうか?
テンポラル テーブルの処理は、特定のデータベースの特定の機能です。対照的に、Flask や SQLAlchemy などのツールは、幅広いアプリケーション向けに設計されています。したがって、これらのツールのチュートリアルの主な関心事は、特定のユース ケースに焦点を当てるのではなく、一般的にコンテンツ (そのコンテンツが何であれ) を配信する方法を示すことであると言えます。エンド ユーザーが特定のフレームワークなどに十分精通している場合、テンポラル データのインターフェイスの設計は (理論上は) 比較的簡単なはずです。
ちなみに、PostgreSQLでテンポラルテーブルを有効にするプラグインが必要な場合は、以下を参照してください。一時テーブル。