ADO et gestion des retours

Résolu
jeoff Messages postés 8 Date d'inscription mercredi 6 avril 2005 Statut Membre Dernière intervention 9 février 2006 - 12 juil. 2005 à 15:58
jeoff Messages postés 8 Date d'inscription mercredi 6 avril 2005 Statut Membre Dernière intervention 9 février 2006 - 13 juil. 2005 à 17:09
Bonjour,



J'utilise actuellement ADODB et je rencontre quelques soucis qui m'oblige à des bidouilles pas très catholiques.



En fait je peux avoir plusieurs issues à l'interrogation de la bdd.



1) Commande de type select qui renvoie un résultat.



2) Commande de type select qui renvoie un recordset vide



3) Commande SQL erronée



4) Commande de type update qui ne renvoie pas de résultat



Voici ma bidouille :

----------------

Public Function mysql_query(ByVal cmd As String, ByRef recset As
ADODB.Recordset, ByRef connec As ADODB.Connection, ByVal login As
String, ByVal password As String, ByVal source As String) As Integer





Try

'------------- Open the Database ----------------

connec.Open(source, login, password)

Catch e As Exception

Return 2

End Try







Try

'----------- send SQL command -------------

recset.Open(cmd, connec)

Catch e As Exception

'commande SQL incorrecte

Return 1

End Try



Try

If recset.BOF True And recset.EOF True Then

'recordset vide

Return 3

End If



Catch e As Exception

'aucun résultat n'est
renvoyé, suppose que les instructions de type insert/replace/update se
sont bien deroulées ?

Return 4

End Try



Return 0



End Function

----------------

J'aimerai donc pouvoir piloter avec plus de précisions les résultats de
mes requêtes et non pas faire de suppositions (notemment dans le cas 4)



Merci

2 réponses

cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
12 juil. 2005 à 18:17
Salut
Et recset.RecordCount ne serait-il pas plus pratique pour savoir combien de résultats sont arrivés ?
Pour les Select : recset.Open
Mais pour les Updates, il faut faire un Connec.Execute

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
(je
3
jeoff Messages postés 8 Date d'inscription mercredi 6 avril 2005 Statut Membre Dernière intervention 9 février 2006
13 juil. 2005 à 17:09
c'est bien ce je pensais :/



ca m'arrange pas du tout cette histoire car il faut que je repense une partie de mon application et j'ai plus beaucoup de temps.



Je vais déjà tâcher de finir le boulot, j'optimiserai plus tard ...



Merci :)
0