[python-win32] Adding a really odd feature to Access as an odbc driver

Tim Roberts timr at probo.com
Tue Mar 6 20:17:41 CET 2007


Grzegorz Adam Hankiewicz wrote:
> Tim Roberts wrote:
>> Access is trouble any time you have more than about 2 people using a
>> single database.  It just wasn't designed for that environment.
>>   
> I know, I know... just imagine that before accepting this job I didn't
> even know Access *could* be used *like* one, I always thought it was
> like a toy sqlite with fancy UI for single users.

That's not a bad description, actually.  However, I have encountered
many clients who have built large applications with Access.  As long as
they're all running on the same machine, it actually works OK for less
than a dozen users.  Once you try to share it across a network, things
get dicier.

>> Is the original application in Access?  Or is it another language that
>> just happens to use the Jet database?  What API does it use to talk to
>> the database?
>>   
> It is just a VB without source code which talks to the database
> through a DNSless connection, which really means I can't do what I was
> proposing, since that would mean changing the original VB application
> to use a specific ODBC, and I can't. I'm just asking because I'm
> curious about this sort of serializing gateway "architecture".

I've heard of other people who wanted to do what you asked --
essentially build a multi-user client/server front-end for an Access Jet
database.  In virtually every case, it was less work to switch to a real
database.  The advantage of SQL is that most database backends look
pretty much the same these days.  Sure, there are odd details, and the
APIs are spelled differently, but the concepts are the same.


> In fact, does sqlite run on windows with multiple writers shared
> through SMB? I know sqlite works with multiple writers, but my
> experience so far is only under linux, so I would like to know if that
> works on windows the same way or there are problems like the horror
> stories I've heard about NFS locking.

On the NT systems (2000/XP/Vista), I believe this works just as well as
it does on Linux.  File locking on NTFS file systems is pretty solid. 
Now, if you're actually talking about involving Samba -- having a file
on a Windows file system shared by SQLite clients on both Windows and
Linux -- then I do not know.  My experiences with Samba have not been
universally good, so I'm afraid I've learned not to rely on it too heavily.

-- 
Tim Roberts, timr at probo.com
Providenza & Boekelheide, Inc.



More information about the Python-win32 mailing list