私はpostgresqlを使用していますが、特定の時間が発生したときにテーブルを変更することは可能ですか. 変更対象のテーブルで指定されている特定の日付が発生したときに値を変更したいと思います。例えば:
アートワークが美術館に置かれ、展示が終了すると、自動的に保管場所に戻され、場所の属性が変更されます。これは、指定された日付に発生します。
私はpostgresqlを使用していますが、特定の時間が発生したときにテーブルを変更することは可能ですか. 変更対象のテーブルで指定されている特定の日付が発生したときに値を変更したいと思います。例えば:
アートワークが美術館に置かれ、展示が終了すると、自動的に保管場所に戻され、場所の属性が変更されます。これは、指定された日付に発生します。
それは不可能。Muleinik で提案されているように、cron ジョブを参照してください...しかし、次に、例を拡張します。
アートワークが美術館に置かれ、展示が終了すると、自動的に保管場所に戻され、場所の属性が変更されます。これは、指定された日付に発生します。
芸術作品が盗まれた場合 (起こる)、または一時的な展覧会の一部として送られた美術館がそれを保持することを決定する (起こる) か、それを「正当な所有者」に返却する (起こる) 場合、または棚に置かれた場合はどうなりますか?間違った場所(起こる)など?
物事がうまくいくと思い込まないでください。うまくいかないでしょう。
postgres には、システム全体のイベント (時間など) に対するトリガーがありません。ただし、次のようなステートメントをスケジュールすることで、OScron
またはサービスにそれを実行させることができます。at
echo "UPDATE artwork SET location='storage' WHERE name='Mona Lisa' | psql -u some_user -d some_database
おそらく、「歴史的な」場所を保存できる別のデータモデルが必要になるでしょう。(将来の記録もそこに保持するため、引用符で囲みます。)