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

VB 6 et antérieur Discussion :

Retrouver la valeur d'une clé primaire autoinc


Sujet :

VB 6 et antérieur

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Retrouver la valeur d'une clé primaire autoinc
    Bonjour

    Voila je n'arrive pas a retrouver cette valeur apres un insert. Pourtant il y a des tutos mais je n'y arrive pas.
    Je procede comme ca et toute remarque sera la bienvenue car je commence avec vb et sql.

    Au debut de la forme je declare les variables suivantes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim db As ADODB.Connection
    Dim Table As ADODB.Recordset
    Dim sql As String
    Ensuite dans Private Sub Form_Load()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set db = New ADODB.Connection
    db.Open "dsn=Powerkart"
    Apres pour inserer un enregistrement je fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Set Table = New ADODB.Recordset
    sql = "INSERT INTO LST_RUN (ID_ACQUIS,NUM_RUN,DATE_OPE,HEURE_OPE) " & _
            "VALUES (1," & Num_Run & ",'" & Date & "','" & Time & "')"
    Table.Open sql, db
    Puis je rafraichis une datagrid

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Adodc1.Refresh
    DataGrid1.Refresh
    et la cela se complique quand j'essaye de recuperer la valeur de la cle primaire autoinc du fichier "LST_RUN"
    J'ai essayé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Set Table = New ADODB.Recordset
    sql = "SELECT MAX(SYSID) FROM LST_RUN;"
    Table.Open sql, db
    Id_LstRun = Table.Fields("SYSID")
    Mai j'ai un message d'erreur du type

    Run-time error '3265':
    Impossible de trouver l'objet dans la collection correspondant au nom ou a la référence ordinale demandé.
    Voici aussi la structure de mon fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    CREATE TABLE LST_RUN (
      SYSID INTEGER NOT NULL,
      ID_ACQUIS INTEGER,
      NUM_RUN INTEGER,
      DATE_OPE DATE,
      HEURE_OPE CHAR(25),
      TEST INTEGER NOT NULL);
     
    ALTER TABLE LST_RUN ADD PRIMARY KEY (SYSID);
    Je suis avec une base sql firebird 2.0

    Cordialement

  2. #2
    Membre habitué
    Inscrit en
    Novembre 2004
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 136
    Points : 127
    Points
    127
    Par défaut
    Es-tu sûr que ton champ SYSID est de type automatique?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Bonjour motrin

    Oui mon champ SYSID est de type automatique

    J'ai trouvé quelque chose
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Id_LstRun = Table.Fields(0)
    Table.Fields(0) fonction au lieu de Table.Fields("SYSID")
    Et je ne comprend pas pourquoi ?????
    Si quelqu'un a la réponse.

    Cordialement

Discussions similaires

  1. [SH] Retrouver la valeur d'une variable.
    Par la2002 dans le forum Shell et commandes POSIX
    Réponses: 2
    Dernier message: 29/09/2014, 17h15
  2. Réponses: 1
    Dernier message: 13/01/2014, 09h30
  3. modification valeur d'une clé primaire
    Par tmerigon dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/09/2010, 11h43
  4. Réponses: 17
    Dernier message: 03/10/2005, 11h16
  5. Encore une question, pour retrouver 2 valeur d'une table
    Par danje dans le forum Langage SQL
    Réponses: 5
    Dernier message: 15/09/2005, 00h11

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