Page 1 sur 1

[R] Copier le contenu d'une table access dans un tableau

Posté : mar. 26 févr. 2008 16:51
par havoc2
Bonjour à tous,

je suis en train de programmer un outil qui me permettra (enfin j'espère :)) de récupérer les données de 2 tables Access et de les coller dans une troisième, pour ce qui est de la connexion à la base et à l'insertion des données, pas de problème, par contre pour ce qui est de la récupération des données dans un tableau, là ça coince.

J'ai récupéré des morceaux de code sur d'autres programmes, et je pense que le langage utilisé pour l'accès aux tables est VB (sans conviction). Ne connaissant pas ce langage et après moultes (ca se dit ça?) recherches infructueuses, j'en viens à vous poser la question...

Voici le code :
► Afficher le texte
Voilà, le script est encore en chantier (il manque des morceaux) mais je recherche la commande qui me permette de récupérer les champs de mes tables Access et une fois cela fait de les intégrer dans une variable de type tableau...
Je sais que lorsque j'exécute la commande

Code : Tout sélectionner

$objRecordSet.RecordCount
J'obtiens le nombre de lignes de résultat de ma requête, donc je suppose qu'il doit y avoir une commande $objRecordSet.RecordQuelqueChose qui me permettrait de récupérer les données...

Merci d'avance pour vos réponses

Bonne Fin de journée

Re: copier le contenu d'une table access dans un tableau

Posté : mar. 26 févr. 2008 20:34
par moutelous
Bonsoir,

Juste une petite remarque parceque je ne comprends pas trop là ...

Pourquoi vouloir passer par un langage de script tel qu'autoit pour régler ce genre ce problème ?

A partir de 2 tables access pour en créer une troisième il est bien plus simple d'utiliser une macro VBA en interne ....

Re: [R] Copier le contenu d'une table access dans un tableau

Posté : mer. 27 févr. 2008 09:02
par havoc2
Bonjour moutelous,

Tout d'abord car je ne maitrise pas VBA, comme je l'ai expliqué dans mon post, et ensuite, je voudrais avoir un raccourci sur mon bureau vers cet exécutable, et je ne crois pas que cela soit possible avec une macro... Enfin, d'après mes connaissances VBA qui sont assez limitées...

J'ai avancé dans mes recherches :

Code : Tout sélectionner

$objRecordSet.MoveFirst

While $objRecordSet.EOF=0
     FileWriteLine( $LogFile, "1.1) Valeur de EOF : " & $objRecordSet.EOF)
     $Array[$i][0] = $objRecordSet.Fields[0]
     $Array[$i][1] = $objRecordSet.Fields[1]
     FileWriteLine( $LogFile, "2) Valeurs des lignes : " & $Array[$i][0] & ";" & $Array[$i][1])
     $i +=1
     $objRecordSet.MoveNext
Wend
Par contre, il n'aime pas :
"Fields[0]" : J'obtiens le message d'erreur suivant :Illegal text at the end of statement (one statement per line)
"Fields(0)" : J'obtiens le message d'erreur suivant :Badly formated variable or macro

Re: [..] Copier le contenu d'une table access dans un tableau

Posté : jeu. 28 févr. 2008 11:28
par havoc2
J'avance petit à petit...

j'ai trouvé un forum en anglais où une personne a utilisé la commande :

Code : Tout sélectionner

$objRecordSet.Fields("MaTable_id").Value
Et chez qui à priori, cela fonctionne...Mais chez moi, j'ai l'erreur : "the requested action with this object has failed"

Peut-être un problème d'include... Mais pour ObjCreate, je n'ai pas l'impression qu'il y ait besoin d'include particulier, j'ai déjà ca :

Code : Tout sélectionner

#include <GUIConstants.au3>
#include <File.au3>
#include <Math.au3>
#include <Array.au3>
Bref je tourne en rond et j'arrive pas à récupérer les valeurs contenues dans mes tables access... :cry: Je pense que je vais aller acheter de la corde :? ...
Si quelqu'un a une idée là dessus (sur mon problème, pas sur la corde :lol: )

A vot' bon coeur

Re: [..] Copier le contenu d'une table access dans un tableau

Posté : jeu. 28 févr. 2008 20:58
par Tlem
Le lien vers le post du forum Anglais aurait été intéressant.

Re: [..] Copier le contenu d'une table access dans un tableau

Posté : ven. 29 févr. 2008 12:18
par havoc2
Voici le lien : http://www.autoitscript.com/forum/lofiv ... 12456.html...

Effectivement cela fonctionne, j'avais mis le nom de mon champ entre crochets...Il n'en fallait pas.

J'espère que ce post pourra aider les personnes qui ont (ou auront) le même problème que moi...

Re: [R] Copier le contenu d'une table access dans un tableau

Posté : ven. 29 févr. 2008 16:19
par Tlem
Je n'y connais pas grand chose dans l'accés aux bases de données, mais ceci ne vous conviendrait-il pas ?
http://www.autoitscript.com/forum/index ... ess++table

Re: [R] Copier le contenu d'une table access dans un tableau

Posté : lun. 03 mars 2008 10:37
par havoc2
Et bien je ne pense pas, car mes requêtes attaquent une base access, et à moins de pouvoir déterminer les paramètres (chemin...) dans la fonction :

Code : Tout sélectionner

_SQLConnect(-1,"localhost","test","sa","superartcore") ; fonction donnée dans la page proposée par Tlem
 
il ne sera pas possible de créer la connexion, à moins de créer un accès web à la base access, et je ne sais même pas si ça peut se faire :) ...

Re: [R] Copier le contenu d'une table access dans un tableau

Posté : lun. 03 mars 2008 12:38
par Tlem
Le lien était là pour guider.

Je verrais plutôt ceci pour votre recherche : http://www.autoitscript.com/forum/index ... t&p=415426