Recherche dans un base de donnees

Signaler
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
bonjour,
j'ai un programme vb6 qui permet de rechercher un n°SR dans table (personnes) base de données Access 2007 mais ne marche pas et afficher un erreur telque "nom ambigu detecté : etablir connection" :

Private Sub cmd_recherche_Click()
' Recuperation des valeurs
n°SR = Val(Text3.Text)

' Appel de la procedure EtablirConnexion
Call EtablirConnexion

' Execution de la requete
ReqSql.ActiveConnection = BDPersonnes
StrSql.CommandText = "SELECT n°SR FROM personnes WHERE n°SR=" & Text3.Text
Set Resultat = ReqSql.Execute


If Resultat.Filter = "n°SR LIKE '*" & Trim(Text3.Text) & "*'" Then
MsgBox "Ce SR existe déja", vbInformation, "Confirmation de "


End If


avec le module suivant:

' Declaration des varaiables
Public n°SR As Integer
Public BDPersonnes As New ADODB.Connection
Public Resultat As New ADODB.Recordset
Public ReqSql As New ADODB.Command

' Procedure pour Etablir une connexion
Public Sub EtablirConnexion()
BDPersonnes.Provider = "Microsoft.Jet.OLEDB.4.0"
BDPersonnes.ConnectionString = "C:\Users\HP\Documents\BD.mdb"
BDPersonnes.Open
End Sub

' Fermer la connexion
Public Sub FermerConnexion()
BDPersonne.Close
End Sub


et Mercie de m'aider a corriger ce code.


edit : Ajout des balises de code

2 réponses

Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
Il doit y avoir à quelque part dans ton code
etablir connection (avec espace)

Sinon, tu as dû déclarer la même procédure à 2 endroits du programme.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
232
Bonjour,
je te rappelle que les critères concernant des chaînes de caractères doivent figurer entre guillemets dans une requête.
C'est le cas te ton critère Text3.Text concernant le champ n°SR
Telle que tu l'as rédigée et en admettant que Text3.Text = "toto"
msgbox "SELECT n°SR FROM personnes WHERE n°SR=" & Text3.Text
retournerait
SELECT n°SR FROM personnes WHERE n°SR=toto
et non, comme attendu :
SELECT n°SR FROM personnes WHERE n°SR = "toto"

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend