|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : décembre 2004 Messages : 116 ![]() |
Bonjour,
voila mon probleme , j'ai une table qui contient un deouble clé primaire. id_personne et numero version + une date de modif | d'autres champs de données id_pers | num_vers|date|.. Donc j'essaye dee faire une SCD (slowly changing dimension) j'ai une personne avec un id et je veux que pour chaque modif d'un des champs, je puisse faire un insert . je veux faire une sorte de if insert into table select id , Max(num_vers)+1, '20070205' from table where id=2314 else insert into table values(2314 ,1, '20070205') endif problemes : postgres ne' me reconnait pas le if et je cherche mais je trouve beaucoup de de type mysql avec if |
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() ![]() Inscription : mars 2002 Messages : 770 ![]() |
En fait c'est un trigger que tu recherche si j'ai bien compris.
Le trigger est une fonction qui se declenche quand il y a un evenement qui se produit (insert,update, delete) |
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Inscription : août 2007 Messages : 128 ![]() |
Le IF n'est pas une instruction SQL. Il n'est reconnu que dans des langages de programmation, par exemple en PL/pgsql.
Ceci dit, je suis d'accord avec hpalpha. Il te faut soit une règle soit un trigger (ma préférence allant au second, plus facile à implanter). |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com