Requte SQL en VB6

Fermé
wanish - 29 mars 2012 à 02:22
 wanish - 31 mars 2012 à 15:41
Bonjour,
je suis un débutant en VB6, alors j'ai construire un petit programme qui permet d'insérer des donnes à une base de donnée Access, et je veux sélectionner ces données a l'aide des requêtes SQL, alors je procède mon recherche avec l identificateur de chaque enregistrement (id) mais lorsque j'affiche les donnes le programme ne respecte pas l id donné, il affiche toujours la première enregistrement
voila mon code de recherche et affichage:

Private Sub Command2_Click()
Dim y As Integer
y = Val(Text3.Text)
data1.RecordSource = "select *from info where id=y"
Text1.Text = data1.Recordset![nom]
Text2.Text = data1.Recordset![prenom]

End Sub



A voir également:

4 réponses

f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
29 mars 2012 à 08:51
Bonjour,

data1.RecordSource = "select *from info where id=y"

La variable y est entre simple cote et doit etre ecrite comme une variable

data1.RecordSource = "select *from info where id='" & y & "'"

Bonne suite
0
merci mais mon probleme reste le meme

Private Sub Command2_Click()
Dim y As Integer
y = Val(Text3.Text)
data1.RecordSource = "select *from info where id='" & y & "'"
data1.Refresh
Text1.Text = data1.Recordset![nom]
Text2.Text = data1.Recordset![prenom]
End Sub

dans les deux textbox 1 et 2 ne saffiche que la premiere enregistrement lorsque je demande une autre avec un id differents de 1???
SVP si pouvez m'aider
0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
29 mars 2012 à 12:14
Re,
Je regarde votre sujet, bien que je ne programme pas du tout comme vous pour les acces base de donnees, noous devrions quand meme y arriver.
Le champ id est il une cle primaire??
0
oui c'est un clé primaire
0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
29 mars 2012 à 13:39
Re,
merci
0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
29 mars 2012 à 17:03
Re,

C'est une autre methode

Private Sub Command2_Click()
'sans Data control
'reference a ajouter:
'Microsoft DAO 3.6 Object Library
'Microsoft ActiveX Data Objects 2.8 Library
Dim y As Integer, Db, Rs

y = Val(Text3.Text)
'Chemin et base a changer
Set Db = OpenDatabase("C:\repertoire\base.mdb")
Set Rs = Db.OpenRecordset("info", dbOpenTable, dbReadOnly)

If Rs.BOF = True And Rs.EOF = True Then 'test Table vide
Exit Sub
Else
'Methode SEEK
Rs.Index = "PrimaryKey" ' Définit l'index.
Rs.Seek "=", y
If Rs.NoMatch Then ' Sortie si la méthode Seek échoue.
Exit Sub
Else ' Mise a jour
Text1.Text = Rs.Fields("nom")
Text2.Text = Rs.Fields("prenom")
End If
End If

End Sub

Bonne suite
0
merci chef ça marche bien.
0