Fonction sort pour un recordset ADO - VB/VBA/VBS - Programmation
Marsh Posté le 23-07-2002 à 10:32:21
Quel SGBD utilises tu ?
Marsh Posté le 23-07-2002 à 10:35:00
Harkonnen a écrit a écrit : Quel SGBD utilises tu ? |
Oups, petit oubli
J'utilise une base Access
Marsh Posté le 23-07-2002 à 10:46:26
Et "Sort" ne fonctionne pas avec Access ?
Bizarre ça... Si le ORDER BY en SQL est supporté, je vois pas pourquoi Sort ne fonctionnerait pas !
Si ça marche vraiment pas, essaie de trier directement ta base par un ORDER By, mais ça m'étonne vraiment !
Marsh Posté le 23-07-2002 à 10:49:29
Harkonnen a écrit a écrit : Et "Sort" ne fonctionne pas avec Access ? Bizarre ça... Si le ORDER BY en SQL est supporté, je vois pas pourquoi Sort ne fonctionnerait pas ! Si ça marche vraiment pas, essaie de trier directement ta base par un ORDER By, mais ça m'étonne vraiment ! |
C'est ptet du a la librairie ADO chargée...
Je pense que je vais faire avec Order by
Merci !
Marsh Posté le 23-07-2002 à 12:30:28
Salut,
Comment utilises-tu la fonction sort de l'objet recordset ?
Marsh Posté le 23-07-2002 à 13:40:23
kinanveu a écrit a écrit : Salut, Je programme sous VB6 et j'utilise un recordset ADO. Avant une consultation, je voudrais ranger mes enregistrements en fonction d'un champs. J'ai donc trouvé la fonction Sort, mais elle ne fonctionne pas. Cela de me donne le message d'erreur suivant : Erreur d'exécution '3251' : L'opération demandée par l'application n'est pas prise en charge par le fournisseur. Si ca peut aider, dans les références, j'ai coché "Microsoft ActiveX Data Objects 2.0 Library". Quelqu'un a-t-il une solution ? Merci d'avance |
Ce message signifie que ton pilote ODBC ne comprend pas l'instruction sort. C'est le pilote qui te permet de te connecter à la base access. Cependant je ne sais pas lequel tu pourrais substituer, jamais essayer mais erreur déja rencontrer, contourner avec ORDER BY en SQL ou GROUP BY.
Marsh Posté le 23-07-2002 à 13:56:11
daritz a écrit a écrit : Ce message signifie que ton pilote ODBC ne comprend pas l'instruction sort. C'est le pilote qui te permet de te connecter à la base access. Cependant je ne sais pas lequel tu pourrais substituer, jamais essayer mais erreur déja rencontrer, contourner avec ORDER BY en SQL ou GROUP BY. |
il a dit qu'il utilisait ADO... ODBC, j'aurais éventuellement pu comprendre pq ça merdait, mais ADO
Marsh Posté le 23-07-2002 à 13:59:55
rs.sort = "nomdu/deschamps"
c bien comme ca que tu l'utilises ?
Marsh Posté le 23-07-2002 à 14:19:50
Harkonnen a écrit a écrit : il a dit qu'il utilisait ADO... ODBC, j'aurais éventuellement pu comprendre pq ça merdait, mais ADO |
ADO sont un groupe d'objets qui tavaillent avec des bases de données. ODBC c'est un type de pilote qui permet à ces objets de se lier à une base et y accéder. Si le pilote ne gère pas la commande, tes objets en revanche peuvent avoir ces commandes comme dans le cas ici. La commande "sort" n'est pas pris en compte par le pilote, mais l'objet ADO est pourvu de la commande.
La solution serait de trouver un pilote de connexion à une base gérant la commande.
Marsh Posté le 23-07-2002 à 14:24:02
DAO, ADO, ODBC, .... peuvent pas nous sortir une fois pour toutes une norme universelle plutot que de décliner la même à toutes les sauces ???
Marsh Posté le 23-07-2002 à 14:34:49
Si c'est comme tu le dis il n'y aurait pas d'évolution et donc pas de chiffre d'affaire qui monte...
Marsh Posté le 23-07-2002 à 15:08:00
Citation : rs.sort = "nomdu/deschamps" |
Comment est déclaré ton objet rs ?
Tu pourrais le morceau de code où l'erreur se produit ?
Marsh Posté le 24-07-2002 à 16:19:38
shyangel a écrit a écrit :
|
Voila ma partie declaration :
Code :
|
et voila ou ca merde :
Code :
|
Si ca peut vous eclaircir...
Marsh Posté le 24-07-2002 à 16:23:05
les dim as new spa bien !
essaye dans le DESCENDING dans le sort
Marsh Posté le 24-07-2002 à 16:27:03
HappyHarry a écrit a écrit : les dim as new spa bien ! essaye dans le DESCENDING dans le sort |
Pas bien les dim as new ? Faudrait faire koi a la place alors ?
Et le "essaye dans le DESCENDING dans le sort", j'avoue que je comprends pas trop...
Marsh Posté le 24-07-2002 à 16:29:19
nan les dim as new c pas bien, vb risque de se chier dessus dans la libétation des ressources
au choix createobject ou set machin = new bidule apres la déclaration
je voulais dire essaye d'enlever le descending
Marsh Posté le 24-07-2002 à 16:35:47
HappyHarry a écrit a écrit : nan les dim as new c pas bien, vb risque de se chier dessus dans la libétation des ressources au choix createobject ou set machin = new bidule apres la déclaration je voulais dire essaye d'enlever le descending |
Ok pour le dim as new. merci pour le renseignement.
Pour le Sort, j'avais deja essayé sans le DESCENDING, ca change rien.
Par contre, est-ce qu'y aurait pas qqchose a changé dans ma chaine de connexion ? C'est ptet une histoire de pilotes ODBC comme c'est dit dans un message plus haut ?
Marsh Posté le 24-07-2002 à 16:37:17
ben pourquoi tu utilises pas directement le pilote access ?
Marsh Posté le 24-07-2002 à 16:40:55
HappyHarry a écrit a écrit : ben pourquoi tu utilises pas directement le pilote access ? |
Je me suis trompé : je voulais dire OLEDB, comme c'est mis plus haut pour la proprieté ConnectionString.
Pour utiliser le pilote Access, elle est bonne ma ConnectionString ou je devrai la changer ?
Marsh Posté le 24-07-2002 à 16:59:09
HappyHarry a écrit a écrit : ben si je demande c qu'elle est pas bonne ... |
Et tu saurais koi mettre a la place ?
Marsh Posté le 24-07-2002 à 17:00:30
pas de tete mais trouvé en 2 secondes sur google
String Format: DRIVER={Microsoft Access Driver (*.mdb)};DBQ=[path to database]
Marsh Posté le 23-07-2002 à 10:29:14
Salut,
Je programme sous VB6 et j'utilise un recordset ADO.
Avant une consultation, je voudrais ranger mes enregistrements en fonction d'un champs.
J'ai donc trouvé la fonction Sort, mais elle ne fonctionne pas.
Cela de me donne le message d'erreur suivant :
Erreur d'exécution '3251' :
L'opération demandée par l'application n'est pas prise en charge par le fournisseur.
Si ca peut aider, dans les références, j'ai coché "Microsoft ActiveX Data Objects 2.0 Library".
Quelqu'un a-t-il une solution ?
Merci d'avance