*nix Access ODBC driver

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View
   I need to write to an Access table from *nix.

   It looks to me that ODBC is the way to go but I'm sure I'll need an
Access driver for this.

   I can't seem to find an Access driver, although I've found drivers
for stuff I've never heard of!


Re: *nix Access ODBC driver

Jeff wrote:
Quoted text here. Click to load it

Well you could get rid of Access and use a free or open-source database

Access is Microsoft's property and they dont' like Unix. So it's hard to
imagine someone else will write a driver for them.

Timothy Madden

Re: *nix Access ODBC driver

Quoted text here. Click to load it

This link is provided in PHP's ODBC docs:



Quoted text here. Click to load it

It's not that hard to imagine.

$email = str_replace('sig.invalid', 'gmail.com', $from);

Anonymous (1984 IOCCC winner):
int i;main()"];read('-'-'-',i+++"hell\
o, world!\n",'/'/'/'));}read(j,i,p)

Re: *nix Access ODBC driver

Curtis Dyer wrote:
Quoted text here. Click to load it

   Thanks, that seems to link over to easysoft.  I had found another
link in the php docs and I've been trying to hook up with their tech

  The easysoft driver looks to be pricey (over $1000), so I'll see.

   Some background on my project. The data was originally stored in
Access on a windows server and I used a perl ODBC connector. The server
got moved over to *nix and I ported the data and code over to MySQL. The
problem is that there are desktop users who need access to the data in
Access so they can write reports on it.  The stop gap measure is
exporting as a CSV and importing into Access, but this is not entirely

   What I'm trying to do is insert the MySQL data into an Access table
that can then be downloaded.

Quoted text here. Click to load it

Re: *nix Access ODBC driver

Quoted text here. Click to load it

Do you have a network connection between the Unix/Linux server where MySQL
is running and the Windows PCs where the users are?  Since Access can link
to MySQL tables with an ODBC driver, install the free MySQL Connector/ODBC
driver (Windows version) on each of these desktop users' PCs, and link to
the MySQL tables on the Unix/Linux server from the Access app.  The users
can run their Access reports with current data stored safely in MySQL.  No
data migration necessary if you've got a network connection.


Re: *nix Access ODBC driver


Quoted text here. Click to load it

I'm no expert but I can report that this method works well.

Only thing I could add is that if you want to prevent your Access
Users from inserting/updating the MySQL, then you can add a Read-only
user for this purpose.

And don't forget that it's possible that your current MySQL user can
only Connect from localhost. So your new user will need to be able  to
access from the outside world.
Free personal divertable Phone number: <http://www.bizorg.co.uk/personalnos.htm

Re: *nix Access ODBC driver

David Quinton wrote:
Quoted text here. Click to load it

   Thanks to all, this looks superb. The database is online and has a
host with an internet host path (not localhost) so that is good.

   I do have a question as to how this works on the desktop. I'm not an
Access user so I'm unfamilar with the program. I have installed the
MySQL ODBC connector
(http://dev.mysql.com/downloads/connector/odbc/5.1.html#win32) but I
don't see how the connection is made from within Access. There is no
read me.

   Can you clue me in?


Quoted text here. Click to load it

Re: *nix Access ODBC driver

Quoted text here. Click to load it

Open the Access database app on the user's PC.  In the menu, click on
File -> Get External Data -> Link Tables.  At the bottom of the dialog
window is a "Files of type" combo box.  Select "ODBC databases ()," the last
item on the list.  The ODBC wizard pops up.  If you don't already have a DSN
for this MySQL database, you can create one now.  (I expect you know all
about DSNs, but if you don't, please post back.)  Once you create/assign a
DSN for this link, you'll be able to assign a table in the MySQL database to
this link.

After the MySQL table is linked, you'll see the name of the newly linked
table in the Databases tab of the Database Window with a globe-like icon
next to it, indicating an ODBC connection.  (This is a little different if
you've got Access 2007, which uses the Navigation Pane instead of the
Database Window to view objects in the database.)

Repeat these steps for each linked MySQL table needed for the reports.

Within Access, the reports (and forms or any other objects) can use this
linked table just like any other linked table from external data sources.
Usually at least one of the Access users knows how to do that, so you don't
have to figure it out.  If you need help, please post back and I'll guide
you through the steps.

Re: *nix Access ODBC driver

Jeff wrote:
Quoted text here. Click to load it

you may be able to use a generic ODBC driver, but as the Timothy stated,
it is unlikely anything on *nix will talk to Blah-ccess - you do know it
is not a real database don't you??

A better plan would be to use MySQL or PostgreSQL on the UNIX box and
use ODBC from your PC to pull data into Blah-ccess.  If this is a very
busy *NIX box, you may flood Blah-ccess and corrupt it.  Also IIRC,
Blah-ccess starts overwriting itself at 4GB. and If you don't have a
backup - it is too bad - so sad.  Use the tools for which they were
meant to be used.

Re: *nix Access ODBC driver

Jeff escribió:
Quoted text here. Click to load it

Some time ago I used MDB Tools:

    http://sourceforge.net/projects/mdbtools /

It kind of worked, meaning that it could handle old versions of the
format and it didn't always crash.

Anyway, according to SourceForge the project is basically death. Give it
a try but don't expect miracles.

At www.unixodbc.org they link a commercial ODBC driver but I've never
used it:


-- http://alvaro.es - Álvaro G. Vicario - Burgos, Spain
-- Mi sitio sobre programación web: http://bits.demogracia.com
-- Mi web de humor al baño María: http://www.demogracia.com

Re: *nix Access ODBC driver

Quoted text here. Click to load it

FreeTDS is a non-commercial option, but is for MSSQL server, not Access.


Site Timeline