Odbcdotnet : extraire des requetes odbc dans un tableau de tableaux de string

Description

Voici une classe pour le requêtage ODBC à vocation universelle : pour cela, on utilise un fichier .dsn (Database Source Name) externe dans lequel on indique le type de la source ODBC à interroger (on peut en générer pour de nombreux types de base de données). L'évolution par rapport à la précédente source XLDB que j'avais présenté il y a quelques mois est que l'on peut maintenant préciser la requête à effectuer aussi dans un fichier externe .sql, de sorte que l'on s'affranchi de la spécificité éventuelle de la source, notamment Excel, pour laquelle il faut ajouter $ à la fin de chaque nom de table (correspondant à chaque feuille Excel) : on peut donc écrire des requêtes spécifiques à chaque source ODBC sans avoir à recompiler le programme. De plus, on peut maintenant effectuer une série de requêtes successives, simplement en séparant les requêtes par un ; comme dans la syntaxe standard de SQL. Pour pouvoir stocker et renvoyer le résultat propre à chaque requête, l'astuce consiste à stocker des tableaux 2D de String dans un tableau conteneur, tout est redimensionné en fonction des requêtes demandées : il suffit alors d'effectuer le traitement d'analyse en dehors de la classe ODBC. L'avantage est que le composant d'accès ODBC gère tout le traitement d'erreur spécifique à ODBC, il ne reste plus qu'à traiter les conversions de valeurs String en fonction de vos besoins propres, c'est de l'ETL ! (Extract, Transform and Load : Extraire, transformer et charger).

Fonctionnalités :
- Nouveau : Explorateur de source de données (tables et champs avec leurs types et tailles) ;
- Utilisation de fichiers .dsn et .sql externes ;
- Création d'un fichier .dsn et .sql par défaut pour Access, Excel, Omnis, DB2 (iSeries d'IBM, anciennement AS/400) via le pilote Client Access, et Navision (Microsoft Business Solutions) via le pilote C/ODBC ;
- Vérification de l'accessibilité effective de la source au moment de l'extraction (pour les sources de type fichier) ;
- Utilisation possible d'une chaîne de connexion directe, par exemple sur un fichier Excel ;
- Gestion des requêtes multiples séparées par des ";" ;
- Gestion de requêtes programmées par le code (au lieu du fichier externe .sql) ;
- Fonctionnement par exemple jusqu'à 254 champs avec le pilote ODBC pour Excel ;
- Avec Excel, les champs calculés sont bien supportés (les valeurs calculées sont retournées comme pour les autres champs) ;
- Requête en écriture si le pilote ODBC le permet ;
- Affichage d'un pourcentage d'avancement ;
- Interruption possible si c'est trop long ;
- Copie des informations dans le presse-papier pour le débogage.

Patrice Dargenton.

Source / Exemple :


' Tout le code est dans la String
Private Const CODE_STR As String = "5589E583EC185756515352BBxxxxx05x81FB"
Public Sub iASMCALL2()
    Call CallWindowProc(nProcByte, 0, 0, 0, 0)
End Sub

Conclusion :


http://patrice.dargenton.free.fr/CodesSources/ODBCDotNet.html

Codes Sources

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.