PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Wyzwalacz wstawiania Postgresql do łączenia

Oto działające rozwiązanie:

CREATE TEMPORARY TABLE t_employees (
    first_name TEXT,
    mid_name TEXT,
    last_name TEXT,
    fullname TEXT
);

CREATE OR REPLACE FUNCTION set_fullname()
    RETURNS TRIGGER AS $$
    BEGIN
        NEW.fullname = NEW.first_name || ' ' || NEW.mid_name || ' ' || NEW.last_name;
        RETURN NEW;
    END;
    $$ language 'plpgsql';


CREATE TRIGGER set_fullname_trigger
    BEFORE INSERT OR UPDATE ON t_employees
    FOR EACH ROW
    EXECUTE PROCEDURE set_fullname();


SET client_min_messages TO 'debug';
INSERT INTO t_employees VALUES ('fname1', 'mname1', 'lname1');
SELECT * FROM t_employees;
UPDATE t_employees SET first_name = 'updated-first-name';
SELECT * FROM t_employees;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rozplątanie aktualizacji PostgreSQL

  2. Jak przyspieszyć strony administracyjne Django za pomocą szacowania liczby PostgreSQL?

  3. Prosty system logowania/autoryzacji za pomocą Dancer i Postgres

  4. Wyzwalacz wstawiania Postgresql do łączenia

  5. używanie identyfikatorów zwróconych z insert do, do wstawiania rekordów z kluczem obcym