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
Ensuite dans Private Sub Form_Load()
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
Apres pour inserer un enregistrement je fais
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Set db = New ADODB.Connection db.Open "dsn=Powerkart"
Puis je rafraichis une datagrid
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
et la cela se complique quand j'essaye de recuperer la valeur de la cle primaire autoinc du fichier "LST_RUN"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Adodc1.Refresh DataGrid1.Refresh
J'ai essayé
Mai j'ai un message d'erreur du type
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")
Voici aussi la structure de mon fichierRun-time error '3265':
Impossible de trouver l'objet dans la collection correspondant au nom ou a la référence ordinale demandé.
Je suis avec une base sql firebird 2.0
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);
Cordialement
Partager