sql >> Databasteknik >  >> RDS >> PostgreSQL

Infoga trigger för att uppdatera en annan tabell med PostgreSQL

Här har vi två tabeller som heter table1 och table2 . Med hjälp av en utlösare uppdaterar jag table2 vid infogning i table1 .

Skapa tabellerna

CREATE TABLE table1
(
  id integer NOT NULL,
  name character varying,
  CONSTRAINT table1_pkey PRIMARY KEY (id)
)

CREATE TABLE table2
(
  id integer NOT NULL,
  name character varying
)

Utlösarfunktionen

CREATE OR REPLACE FUNCTION function_copy() RETURNS TRIGGER AS
$BODY$
BEGIN
    INSERT INTO
        table2(id,name)
        VALUES(new.id,new.name);

           RETURN new;
END;
$BODY$
language plpgsql;

Utlösaren

CREATE TRIGGER trig_copy
     AFTER INSERT ON table1
     FOR EACH ROW
     EXECUTE PROCEDURE function_copy();


  1. enkel fast tabell med flera kolumner kontra flexibla abstrakta tabeller

  2. Hur UPPDATERAS en kolumn med en annan kolumn i en annan tabell? SQL-fel:ORA-00933:SQL-kommandot avslutades inte korrekt

  3. Hitta och ersätt text i hela tabellen med en MySQL-fråga

  4. Återställ ROOT-lösenord i MySQL 5.6