IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Firebird Discussion :

sql sous firebird 1.5 : recupérer le record number


Sujet :

SQL Firebird

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2002
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 50
    Par défaut sql sous firebird 1.5 : recupérer le record number
    bonjour,
    comment recuperer le numero de l'enregistrement apres un insert dans une table.
    par exemple j'insere la premiere ligne, je veux que mon champ "recnumber" prenne le numero 1, puis j'insere la seconde ligne et mon champ prend la valeur 2.

    j'ai vu des exemples avec sqlserver via des requete en boucle (join de la table sur elle meme) mais c'est tiré par les cheveux...

    merci a vous
    A +
    Julien

  2. #2
    Membre Expert

    Homme Profil pro
    Consultant spécialité Firebird
    Inscrit en
    Mai 2002
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Consultant spécialité Firebird
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 342
    Par défaut
    recnumber c'est avec un generateur et un trigger ?

  3. #3
    rsc
    rsc est déconnecté
    Membre émérite
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Par défaut
    Comme dit Philippe Makowski : generator + trigger. Voici un exemple degénération de clé autoincrémentée pour une table ELEVAGES :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    CREATE GENERATOR GEN_Elevages_Id;
    SET GENERATOR GEN_Elevages_ID TO 0;
     
    SET TERM ^ ;
    CREATE TRIGGER TG_BI_Elevages FOR ELEVAGES
    BEFORE INSERT
    POSITION 0
    AS
    BEGIN
      IF ( ( new.ElvId = 0 ) 
    OR ( new. ElvId > GEN_ID (GEN_Elevages_Id, 0 ) ) )
        THEN new. ElvId  = GEN_ID (GEN_Elevages_Id, 1 );
    END ^
    SET TERM ; ^
    A adapter !

  4. #4
    Membre averti
    Inscrit en
    Septembre 2002
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 50
    Par défaut
    désolé de ne pas avoir remercié plus tot !
    a +

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SQL] insertion de données sous firebird
    Par gorgoroth dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 02/04/2008, 22h06
  2. Réponses: 1
    Dernier message: 29/11/2005, 12h25
  3. résultat de requêtte sql sous form de table
    Par developpeur_mehdi dans le forum Bases de données
    Réponses: 5
    Dernier message: 08/03/2004, 15h19
  4. de SQL vers T-SQL sous MS SREVER
    Par Nadaa dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 19/09/2003, 15h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo