Norman wrote:
> Hi,
> I have been trying to connect to a Microsoft Access test.mdb file
> which is one I created using MS Access.
>
> I am running Squirrel on Linux and have shared access to the
> database directory which is on my Linux home partition.
>
> Squirrel keeps asking me for a user/password combo but, as far as
> I know none is set up and I do not know the syntax needed in this
> case.
>
> I have
> Do I need to be running some database server?
Yes. There's no Linux software to read Access files; they're in a
proprietary format, and Microsoft has no intention of changing that.
Even if Access were an open format, it would still not be ideal. Access
databases just doesn't handle concurrent users well. That's why Access
supports connecting to a database server. Microsoft would prefer you use
Microsoft SQL Server, of course, but it supports any RDBMS with an ODBC
driver.
My suggestion is to do the following:
1. Set up a PostgreSQL server on the Linux machine (see
<http://www.postgresql.org/>)
2. Download ODBC drivers from
<http://gborg.postgresql.org/project/psqlodbc/projdisplay.php>, put them
on the Windows machines, and get Access to connect
3. Using Squirrel or psql, set up tables on the PostgreSQL server that
are similar to the ones on the Access file. (You'll likely have to look
up the syntax; there should be some tutorials linked from the PostgreSQL
site.)
4. Link the tables from Access, copy the data from the tables embedded
in the Access file, and delete the embedded tables.
This will probably be a difficult process for you the first time you do
it. If you stick it out, I think you'll find it worthwhile.
When done, you can use Access, Squirrel, and many other tools (both open
source and proprietary) to access stuff in the PostgreSQL database. And
PostgreSQL supports much more powerful queries than Microsoft Jet SQL
(the engine used by Access).
There is a way to get Squirrel to read Access files (which you'd
probably find easier) but only on the Windows machines. Squirrel needs a
JDBC driver and Access supplies an ODBC driver. There exist ODBC->JDBC
bridges, though I've never tried one.
Good luck.
Scott Lamb
|