Avis sur une requete

scoubidou79 Messages postés 18 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 16 juillet 2004 - 4 juil. 2004 à 19:12
scoubidou79 Messages postés 18 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 16 juillet 2004 - 4 juil. 2004 à 19:46
Bonjour a tous, je désire récupérer une infos d'une requete, dite moi si c'est correcte, parce que ca ne marche pas trop.

Private Sub recup_info()
Dim MaBase As String
Dim Db2 As New ADODB.Connection
Dim Rs As New ADODB.Recordset

MaBase = "C:\Documents and Settings\pat\Bureau\VB\Projet\bd1.mdb"
Db2.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & MaBase

Set Rs = Db2.Execute("SELECT * FROM ressources where nom= 'thibault';")

tcout = Rs.Fields(3)
prenom.Caption = tcout

Rs.Close

Db2.Close
End Sub

'Fermeture de la base
Public Sub Exit_Click()
db.Close
End
End Sub

4 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
4 juil. 2004 à 19:20
Salut scoubidou79
Je pense que la syntaxe du Set Rs n'est pas correct :
Set Rs = New ADODB.RecordSet
SQL = ("SELECT * FROM ressources where nom= 'thibault';"
Rs.Open SQL, Db2 

Le passage par la variable SQL n'est pas obligatoire (je trouve plus pratique)

Ensuite, pour t'assurer qu'il n'y a qu'un seul résultat retourné :
If Rs.RecordCount = 0 Then MsgBox "Pas de résultat"
If Rs.RecordCount > 1 Then MsgBox "Plus qu'un résultat" ...

Vala
Jack
0
scoubidou79 Messages postés 18 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 16 juillet 2004
4 juil. 2004 à 19:24
merci, mais je comprends pas tout, il ne manque pas des parenthèses quelque part ??
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
4 juil. 2004 à 19:30
En effet ... c'était pour voir si tu suivais ... lol
0
scoubidou79 Messages postés 18 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 16 juillet 2004
4 juil. 2004 à 19:46
Est ce que c'est plus correct ainsi :

Private Sub recup_info()
Dim MaBase As String
Dim Db2 As New ADODB.Connection
Dim Rs As New ADODB.Recordset
Dim SQL As New ADODB.Recordset

MaBase = "C:\Documents and Settings\pat\Bureau\VB\Projet\bd1.mdb"
Db2.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & MaBase

Set Rs = New ADODB.Recordset
SQL = ("SELECT * FROM ressources where nom= 'thibault';")
Rs.Open SQL, Db2

If Rs.RecordCount = 0 Then
MsgBox "Pas de résultat"
End If

If Rs.RecordCount > 1 Then
MsgBox "Plus qu'un résultat"
End If

tcout = SQL.Fields(3)

Rs.Close

Db2.Close
End Sub
0
Rejoignez-nous