sql >> データベース >  >> RDS >> PostgreSQL

Postgresの行の最終変更タイムスタンプを追跡する

    postgresqlでは、トリガーを使用する必要があります。これを行う方法については、このリンクをたどることができます https:// x- team.com/blog/automatic-timestamps-with-postgresql/

    記事を要約すると、次のことができます。

    1. トリガーされるPl/Pgsql関数を作成します。

      CREATE OR REPLACE FUNCTION trigger_set_timestamp()
      RETURNS TRIGGER AS $$
      BEGIN
        NEW.updated_at = NOW();
        RETURN NEW;
      END;
      $$ LANGUAGE plpgsql;
      
    2. テーブルを作成する

      CREATE TABLE mytable (
        id SERIAL NOT NULL PRIMARY KEY,
        content TEXT,
        updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
      );
      
    3. そして最後にトリガーを追加します:

      CREATE TRIGGER set_timestamp
      BEFORE UPDATE ON mytable
      FOR EACH ROW
      EXECUTE FUNCTION trigger_set_timestamp();
      

    質問の詳細については、次を参照してください: https://dba.stackexchange.com/questions/58214/getting-last-modification-date-of-a-postgresql-database-table

    お役に立てば幸いです。



    1. Pythonでmysqlコネクタを使用してデータを挿入する

    2. PostgreSQLで配列の要素を削除するにはどうすればよいですか?

    3. 列の大文字と小文字を区別するphpNamesを推進する

    4. PostgreSQLエラー:42P01:リレーション[テーブル]が存在しません