Accès aux Databases

Programmation d'applications complexes
LeCyb
Messages : 273
Inscription : dim. 26/déc./2004 20:49

Accès aux Databases

Message par LeCyb »

Je suis en train de faire un outil particulier pour le taff et j'aimerais pouvoir "traiter" des fichiers (Access, Excel, DBF, texte etc...).

Pour les fichiers texte, dbf et autres qui ne contiennent pas plusieurs tables y'a pas trop de soucis.

Par contre pour les fichiers Excel et Acces j'arrive bien à faire des requêtes mais le problème c'est que je ne connais pas à l'avance le nom des tables/sheets.

Pour Access y'a moyen en faisant une query sur la table MSysObjects (elle est cachée) sauf que par défaut les droits en lecture ne sont pas activés (faut aller dans le menu Outils, Sécurité... dans Access) et il n'est pas envisageable de faire ça à la main pour chaque fichier.

Pour Excel c'est idem, je sais faire des query sur chaque sheet mais pour ça il me faut son nom et pas moyen d'avoir la liste des noms.

Quelqu'un a une idée ?
Vive le thread-safe !
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

je sais pas trop j'avais un peu bloqué là dessus à une époque.
mais là je viens tombé sur un truc intéressant :

http://msdn.microsoft.com/library/en-us ... frame=true

donc en fait il faudrait utiliser ce qu'il y a dans cette page.
mais pour çà il faudrait apparemment programmé l'api odbc de windows...

http://msdn.microsoft.com/library/defau ... erence.asp

c'est une piste mais il y a peut etre plus simple je ne sais pas.
Image
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

Sans aller plus loin je viens de me rendre compte que dans PB on peut écrire SQLTables_(), ya plus qu'à lire la doc en espérant que ce soit pas trop dur.
http://msdn.microsoft.com/library/defau ... tables.asp
Image
LeCyb
Messages : 273
Inscription : dim. 26/déc./2004 20:49

Message par LeCyb »

J'ai exploré un peu le truc et ça m'a l'air chaudasse quand même.

Y'a un code sur le forum anglais mais je trouve ça un peu trop bidouille ( http://forums.purebasic.com/english/vie ... =sqltables ).
Vive le thread-safe !
Répondre