Précédent   Forum du club des développeurs et IT Pro > Bases de données > PostgreSQL > Requêtes
Requêtes Forum d'entraide sur les requêtes SQL spécifiques à PostgreSQL, les triggers, les vues, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 14/12/2012, 16h55   #1
sat83
Membre Expert
 
Avatar de sat83
 
Homme
Développeur informatique
Inscription : mars 2004
Messages : 987
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mars 2004
Messages : 987
Points : 1 271
Points : 1 271
Par défaut Trigger Insertion Clé Primaire

Bonjour à tous,

Après quelques années sous ORACLE, je viens de débuter sous PostGreSQL il y a peu.

Sous Oracle, j'utilisais une séquence et un trigger pour générer des clés primaires "automatiquement" dans mes tables. Je pense que ca doit être possible sous PostGreSQl, mais la syntaxe doit être différente.

Sous Oracle, voici la requête pour générer ma clé primaire:
Code :
1
2
3
4
5
6
CREATE TRIGGER nom_de_mon_trigger
  BEFORE INSERT ON nom_de_ma_table
  FOR EACH ROW
  BEGIN
    SELECT nom_de_ma_sequence.NEXTVAL INTO :new.nom_du_champ_PK FROM dual;
  END;
Pourriez vous m'indiquer un équivalant sous PostgreSQL pour générer la clé primaire à partir de la séquence à chaque insertion dans la table?

Par avance merci
__________________
Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...
sat83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2012, 19h13   #2
estofilo
Modérateur
 
Inscription : octobre 2008
Messages : 1 702
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : octobre 2008
Messages : 1 702
Points : 2 347
Points : 2 347
Voir cette discussion sur les séquences.
estofilo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2012, 08h22   #3
sat83
Membre Expert
 
Avatar de sat83
 
Homme
Développeur informatique
Inscription : mars 2004
Messages : 987
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mars 2004
Messages : 987
Points : 1 271
Points : 1 271
Merci beaucoup!
J'ignorais que l'on pouvait attribuer pour valeur par défaut une séquence !
J'ai finalement opté pour le type SERIAL pour les PK de ma table, ce qui crée automatiquement la séquence associée.
__________________
Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...
sat83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 09h57.


 
 
 
 
Partenaires

Hébergement Web