kanagan
Messages postés26Date d'inscriptionmercredi 17 décembre 2003StatutMembreDernière intervention29 mars 2006
-
29 mars 2006 à 11:19
kanagan
Messages postés26Date d'inscriptionmercredi 17 décembre 2003StatutMembreDernière intervention29 mars 2006
-
29 mars 2006 à 14:17
Bonjour,
Voilà je débute en VB, et dans mon code, il y a un truc que je n'ai pas compris avec les recordSet.
Je m'explique, j'utilise 2 recordSet pour effectuer 2 requêtes, un pour faire un INSERT et un pour faire un SELECT. Lorsque que j'exécute mes requêtes avec rs.open tout se passe correctement, mais lorsque je veux les clore en faisant rs.close, cela ce passe bien pour la requête avec le SELECT, mais avec le recordSet de la requête de l'INSERT, j'ai un message d'erreur de type:
"Operation not allowed when the object is closed".
Cela veut dire qu'en faisant un INSERT, le recordSet se clot tout seul ?
Et si oui, est-il fermé proprement ou y a-t-il une méthode pour le faire proprement?
Je n'ai pas bien saisi ce point, si vous pouviez m'aider.
cs_jperre
Messages postés268Date d'inscriptionlundi 9 janvier 2006StatutMembreDernière intervention19 janvier 20172 29 mars 2006 à 11:30
L'erreur vient du fait qu'il ne fallait pas utiliser un objet recordset pour effectuer une requête action, mais un objet Command
Dim cmInsert As ADO.Command
Set cmInsert=New ADO.Command
cmInsert.ActiveConnection=NomObjet ADO.Connection
cmInsert.CommandText="INSERT INTO..."
cmInsert.Execute
...
Bon courage!...
kanagan
Messages postés26Date d'inscriptionmercredi 17 décembre 2003StatutMembreDernière intervention29 mars 2006 29 mars 2006 à 11:57
Effectivement ça marche mieux ^^.
Encore une dernière question:
Pour fermer proprement l'objet command, on fait seulement
Set cmInsert = nothing ?
Ou y a t'il autre chose à faire, du genre cmInsert .cancel ?
Sachant qu'il n'est plus utilisé par la suite.