Utiliser unixODBC avec Visual Integrator

Il est possible d'utiliser unixODBC lorsque Diver Solution version 6.4 ou supérieure est installé sur une machine Linux.

Avant d'établir une connexion entre une base de données relationnelle et (Visual) Integrator, il faut s'assurer que unixODBC soit opérationnel sur le serveur Linux.

Dans un premier temps il faut vérifier que dans le répertoire /etc/ se trouvent les fichiers odbc.ini et odbcinst.ini

Voici un exemple de contenu du fichier odbc.ini :

[ODBC Data Sources]

[Oracle]

**** définition des paramètres/pilotes de connexion à la base****

[PostSQL]

**** définition des paramètres/pilotes de connexion à la base****

Et voici un exemple de contenu du fichier odbcinst.ini :

[ODBC]

Trace           = yes
TraceFile               = /tmp/odbc.log

[Oracle]

**** définition des paramètres/pilotes de connexion à la base****

[PostgreSQL ANSI]

**** définition des paramètres/pilotes de connexion à la base****

[PostgreSQL Unicode]

**** définition des paramètres/pilotes de connexion à la base****

Les noms qui sont entre crochets correspondent à des sources de données.

Pour vérifier que unixODBC fonctionne, tapez dans un terminal la ligne de commande suivante :

isql --version

en cas de succès la réponse fournie est de la forme suivante :

unixODBC 2.2.14

Pour vérifier qu'une source de données fonctionne, tapez dans un terminal la ligne de commande suivante :

isql -v <nom_de_la_source_de_donnée> dans notre cas par exemple :

isql -v PostSQL

Cela donne en résultat :

+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>:

Une fois l'invite SQL affichée vous pouvez saisir une requête comme dans notre exemple :

SQL> select * from test_table;

Pour notre exemple, le résultat retourné est :

+--------+--------+
| column1| column2|
+--------+--------+
| 1      | 1      |
+--------+--------+
SQLRowCount returns 1
1 rows fetched
SQL>

Saisissez quit pour terminer la connexion puis fermez le terminal.

Après avoir vérifié que la connexion à la base de données est opérationnelle sur le serveur Linux, nous allons maintenant lancer le Visual Integrator sur un poste Windows.

Nous allons ouvrir une connexion à distance de type Production afin de se connecter au serveur Linux distant (menu Fichier > Ouvrir une session distance...)

Une fois la session ouverte, nous allons créer un nouveau script avec un objet d'entrée SQL :

SQL-object

Dans les propriétés de l'objet,

  • pour le paramètre Sql_Source saisissez le nom de la source de données (dans notre exemple : PostSQL)
  • pour le paramètre Sql_Query saisissez la requête SQL adéquate (dans notre exemple : select * from test_table;)

Un clic droit sur l'objet fait apparaitre un menu contextuel. Cliquez sur Tester l'objet.

Le résultat de la requête s'affiche alors dans l'onglet Vue de données :

resultat

Dans le cas contraire, des informations d'erreurs sont affichées dans l'onglet Journaux.