sql >> Database >  >> RDS >> PostgreSQL

Standaardwaarde in een kolom bij het invoegen van een nieuwe rij

Welkom bij ZO. Kijk eens naar triggers .

In principe hoeft u alleen een functie aan te maken om de bijgewerkte ..

CREATE OR REPLACE FUNCTION update_date() RETURNS trigger AS
$BODY$
BEGIN
  NEW.updated = current_date;
  RETURN NEW;
END;
$BODY$ LANGUAGE 'plpgsql';

.. en voeg het toe aan een BEFORE INSERT OR UPDATE trigger zo

CREATE TRIGGER check_update
BEFORE INSERT OR UPDATE ON photographies
FOR EACH ROW EXECUTE PROCEDURE update_date();

Na het invoegen van een record ..

INSERT INTO photographies (name, author, date) 
VALUES ('José Saramago ','As Intermitências da Morte','2005-01-01');

.. je hebt je bijgewerkte kolom met de huidige datum

SELECT * FROM photographies ;
      name      |           author           |    date    |  updated   
----------------+----------------------------+------------+------------
 José Saramago  | As Intermitências da Morte | 2005-01-01 | 2019-12-06
(1 Zeile)



  1. SELECTEER tussen vandaag en gisteren

  2. Stop zoekopdracht via pdo

  3. Hoe wijzig ik in SQL*Plus de prompt om de verbonden gebruiker en database weer te geven?

  4. Gegevens uit 5 tabellen samenvoegen zonder dubbele waarden en resultaat krijgen met aangepaste status in Oracle 10g