Bonjour,
Je désire faire une requête de sélection paramétrée dans une base de donnée access.
Je dois sûrement faire une erreur car mon datarow ne s'actualise pas.
Faut-il le vider après chaque utilisation ?
L'erreur se trouve-t-elle dans ma requête ?
Personnellement, je pencherais du côté du paramètre mais j'ignore où. C'est juste une intuition.
.NET est nouveau pour moi alors soyez indulgent avec mon code ^^
Ce code est donc exécuté lorsque le texte d'une ComboBox est mis à jour.
Il est sensé récupérer les données d'un client en particulier pour pouvoir afficher une fiche signalétique dans une TextBox en mode multiligne.
Je sais pour avoir vérifier que la valeur de mon paramètre est correcte mais la syntaxe de déclaration du paramètre n'est peut-être pas bonne. J'ai écrit cela après maintes recherches en mettant "bout à bout" des morceaux lus à droite et à gauche. Les explications que je trouve sont majoritairement pour sqlserver et non pour access.
Si quelqu'un possède un lien pour les requêtes paramétrées sous access, je lui en serait reconnaissant.
Voici donc le code :
Merci d'avance à tous ceux qui prendront la peine de me répondre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 sql = "SELECT * FROM TB_CLIENT WHERE NUMERO = ?" frmPrincipale.conn.Open() frmPrincipale.command.CommandText = sql frmPrincipale.command.Parameters.Add("id_client", OleDbType.Integer).Value = clients.Item(Me.cbClient.Text) dataAdapter = New OleDbDataAdapter(frmPrincipale.command) frmPrincipale.command.Connection() = frmPrincipale.conn dataAdapter.Fill(dataSet, "TB_CLIENT") dataTable = dataSet.Tables("TB_CLIENT") frmPrincipale.conn.Close() rowNumber = 0 dataRow = dataTable.Rows(rowNumber) Dim infos As String infos = dataRow("TITRE") & " " & dataRow("NOM") & " " & dataRow ("PRENOM") & Chr(10) & dataRow("NUM") infos = infos & ", " & dataRow("RUE") & Chr(10) & dataRow("CP") & " " & dataRow("LOCALITE") & Chr(10) If Not (String.IsNullOrEmpty(dataRow("TELEPHONE"))) Then infos = infos & "TEL : " & dataRow("TELEPHONE") Else infos = infos & "FAX : " & dataRow("FAX") End If infos = infos & Chr(10) & "TVA : " & dataRow("TVA") Me.tbClient.Text = infos dataSet.Clear() dataTable.Clear()
Griftou.
Partager