J'ai avancé... alors je vais vous montrer ce que j'ai fait, peut-être aurais-je plus de chance : (je reprends depuis le début, pour être plsu claire)
Je souhaite accéder à une base access sur un PC Linux en Red Hat 3. Sur ce PC, il y a donc mon fichier *.mdb et Oracle version 9.2.0
Après plusieurs petites recherches, j'ai trouvé le bon driver pour lire mon fichier *.mdb (j'ai choisi libmdbodbc.so).
J'ai ensuite fouillé sur internet pour trouver un peu d'aide.
J'ai bien créé mon DSN, dont voici les détails :
Pour mon fichier odbcinst.ini :
[MicrosoftAccess]
Description = ODBC for Microsoft Access
Driver = /usr/lib/libmdbodbc.so
Setup = /usr/lib/libmdbodbc.so
FileUsage = 1et pour mon fichier odbc.ini :
[DSN]
Description = MicrosoftAccess Base
Driver = MicrosoftAccess
Database = /home/users/data/mestests/base.mdb
Servername = localhostDonc bon, j'essaie de voir si mon DSN est bien configuré, OpenOffice.org le voit, j'me dis : "Chouette, ça doit être bon !"
Ben non, c'est pas fini. Parce que je dois aller lire ma base par programmation...
Donc je me dis, essayons les "heterogeneous services" d'Oracle, ça doit être bien tout ça.
Donc je configure mes p'tits fichiers qui vont bien.
Mon fichier "inithsdsn.ora" localisé dans $ORACLE_HOME/admin
HS_FDS_CONNECT_INFO = DSN
HS_FDS_TRACE_LEVEL = 0
HS_DB_NAME = hsdsn
HS_FDS_SHAREABLE_NAME = /usr/lib/libmdbodbc.soMon fichier "listener.ora" placé dans $ORACLE_HOME/network/admin
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(PROGRAM=hsodbc)
(SID_NAME=DSN)
(ORACLE_HOME=/home/oracle/product/9.2.0)
)
)et mon fichier "tnsnames.ora" placé aussi dans $ORACLE_HOME/network/admin
hsdsn =
(DESCRIPTION=
(ADDRESS=
(PROTOCOL=tcp)
(HOST=localhost)
(PORT=1521)
)
(CONNECT_DATA=
(SERVICE_NAME=DSN)
)
(HS=OK)
)Une fois tout ça effectué, je suis contente normalement. J'me dis, ça devrait marcher...
Bon je mets les droits sur le fichier "listener.log" sinon ça marche pas.
Et là, je vois aucun service quand je lance la commande "lsnrctl start".
Voilà ce que j'obtiens (oh joie!) :
LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 07-MAY-2007 13:54:43
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Starting /home/oracle/product/9.2.0/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 9.2.0.4.0 - Production
System parameter file is /home/oracle/product/9.2.0/network/admin/listener.ora
Log messages written to /home/oracle/product/9.2.0/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521)))
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 9.2.0.4.0 - Production
Start Date 07-MAY-2007 13:54:43
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File /home/oracle/product/9.2.0/network/admin/listener.ora
Listener Log File /home/oracle/product/9.2.0/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521)))
The listener supports no services
The command completed successfullyBon alors qu'est-ce que j'ai mal fait ? Comment je peux créer le lien entre ma base de données access base.mdb et ce truc ? Comment je peux faire des requêtes là-dedans ?
Please, help me !
