sql >> Database >  >> RDS >> PostgreSQL

Standaardwaarde voor kolom postgres-functie met argument

Helaas kun je dat niet doen vanwege (voor de documentatie ):

U kunt een trigger gebruiken, bijvoorbeeld:

create table the_table (
    trade_id int not null,
    group_id int);

create or replace function trade_id_trigger ()
returns trigger language plpgsql as $$
begin
    new.group_id:= new.trade_id+ 1;
    return new;
end $$;

create trigger trade_id_trigger
before insert or update on the_table
for each row execute procedure trade_id_trigger();

insert into the_table values (1,1);

select * from the_table;

 trade_id | group_id
----------+----------
        1 |        2
(1 row)



  1. START TRANSACTIE binnen BEGIN ... END-context of buiten en LOOP-syntaxis

  2. Sets uit een enkele tabel, gegroepeerd op een kolom

  3. mysql recursieve (boom) bovenliggende onderliggende categorie

  4. Uitvoering van mySQL-query in jQuery.Post-methode