John:
Check out SQL Relay at http://sqlrelay.sourceforge.net/
It will do locks but you can lock/unlock really fast.

Regards,

[EMAIL PROTECTED]
NCCI
Boca Raton, Florida
561.893.2415
greetings / avec mes meilleures salutations / Cordialmente
mit freundlichen Grüßen / Med vänlig hälsning


                                                                       
                      John O'Neill                                     
                      <[EMAIL PROTECTED]        To:       
<sqlite-users@sqlite.org>
                      south.net>               cc:                     
                                               Subject:  [sqlite] Remote apps 
reading and writing data to the same DB
                      03/03/2005 02:40                                 
                      PM                                               
                      Please respond to                                
                      sqlite-users                                     
                                                                       
                                                                       




Hello all,

I have an application that is designed to run on multiple networked
machines simultaneously, and it is important to maintain speed (i.e. no
blocking write requests) while the main app is running.  At the same time,
a second application can open and read information from the DB.  All
machines have read/write access to a central directory where the main DB
file is stored.

Ultimately, I want all information to be stored in the one database file,
and I'm wondering how to handle the multiple writes from different
processes on separate machines.

I have currently designed a small wrapper around SQLite that does the
following for each of the remote connections:

1. Create a separate database file for a "transaction" which contains
multiple table insertions.  The tables already exist in the master DB, so
only the columns are new.
2. When enough data is stored in this temp DB, open the main DB and merge
the information.
3. Delete the temp DB and repeat the process for new information.

Is this overkill?  Should I simply allow all remote processes to directly
attach to the main database and issue "create temp table...commit"
commands?  What I'm basically doing here is creating a standalone database
to do what "create temp table" does when in the same process.

Thanks in advance for any recommendations or comments.
John






Reply via email to