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 :

Assigner un générateur depuis une variable


Sujet :

SQL Firebird

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    839
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 839
    Points : 262
    Points
    262
    Par défaut Assigner un générateur depuis une variable
    bonjour,

    je fais de l'import de données depuis des tables paradox et je voulais assigner un générateur depuis une variable "compteur" comme indiqué ci dessous:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ibsql1.Close;
    ibsql1.SQL.Clear;
    ibsql1.SQL.Add('set generator GEN_L_BONREC_ID to :gen');
    ibsql1.ParamByName('gen').AsInteger:=compteur;
    ibsql1.ExecQuery;
    ibtransaction1.Commit;
    mais cela ne fonctionne pas, j'ai l'impression qu'une requête paramétrée ne fonctionne pas avec la commande "set generator to .."

    est ce qu'il y a une autre solution ?

    merci

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    566
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 566
    Points : 1 045
    Points
    1 045
    Par défaut
    Bonjour,

    Pour obtenir une valeur du générateur, la requête doit être :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT GEN_ID(GEN_L_BONREC_ID, 1) as pIndex FROM RDB$DATABASE
    La modification de votre code peut se faire ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ibsql1.Close;
    ibsql1.SQL.Clear;
    ibsql1.SQL.ADD('SELECT GEN_ID(GEN_L_BONREC_ID, 1) as pIndex FROM RDB$DATABASE');
    ibsql1.Open;
    VariableRecupération := ibsql1.FieldByName('pPkIndex').AsInteger;
    ibsql1.Close
    Tout ceci peut s'intégrer dans une fonction.

    A+

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

Discussions similaires

  1. [AC-2003] Executer une instruction depuis une variable chaine
    Par JYL74 dans le forum VBA Access
    Réponses: 7
    Dernier message: 27/09/2010, 14h18
  2. assigner un enum a une variable
    Par olibara dans le forum C#
    Réponses: 5
    Dernier message: 14/04/2010, 16h56
  3. Réponses: 2
    Dernier message: 16/07/2007, 01h01
  4. Ecrire du texte depuis une variable dans une vue
    Par Vlad_Oliv dans le forum MFC
    Réponses: 1
    Dernier message: 09/01/2007, 17h28
  5. [VBA-E] Appel de fonction/procédure depuis une variable
    Par truman dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 09/05/2006, 16h20

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