I wasn't saying SQLite *should* do it, I was wondering how technically
difficult such a layer might be.  For example, while the API's are
different, if the underlying file format is the real problem, it would still
be nice to leverage SQLite3's (S3) better concurrency.  Clearly, this is a
bit of problem, since it would required hacking out the disk read components
from S3 and replacing them with a generic interface.  Having not looked at
the source, I can't imagine this is trivial, since there is no doubt DHP has
heavily optimized the format and the reading/writing of it but still...

This is one of those "Can it be done, and at what cost", not a "It needs to
be done, and damn the cost".

--Keith

-----Original Message-----
From: Stober, Mel [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, October 19, 2004 9:01 AM
To: '[EMAIL PROTECTED]'
Subject: RE: [sqlite] PHP5 && SQLite3


using PHP doesn't help in pure C++ desktop applications that do not run in
web-server entironments.

Mel Stober


-----Original Message-----
From: Craig Morrison [mailto:[EMAIL PROTECTED]
Sent: Tuesday, October 19, 2004 10:57 AM
To: [EMAIL PROTECTED]
Subject: Re: [sqlite] PHP5 && SQLite3


Keith Herold wrote:
> Out of curiosity, how hard would it be to build a translation layer?  
> I suppose it's easier to keep both versions around, and upgrade when 
> necessary, but as a technical problem, it's at least interesting?  
> Only downwardly, of course, so there would be no expectation that 2.X 
> could use 3.X, just the reverse.  It had sounded as if only the file 
> format was the problem; is it more than that?
> 
> I'm not pushing, in any sense, just wondering if anyone has looked at 
> this issue with an eye to resolving it.

The PHP library IS the translation layer.

The crux of the issue is that the formats are NOT compatible, nor are 
the API's. What Dr. Hipp suggested is the best possible course. Link 
with both API's which _DO_ have separate naming conventions making it 
possible to support both formats concurrently. All new databases follow 
Sqlite3, legacy follow Sqlite2.

There are signatures in the database files to distinguish between the 
two. Use the tools that are available to add the layer of abstraction 
necessary. Don't force that on SQlite itself.

Its all summed up in one sentence, which is the first one that appears 
at sqlite.org:

"SQLite is a small C library that implements a self-contained, 
embeddable, zero-configuration SQL database engine."

The focus is there, anything beyond that is up to the implementation.

-- 
Craig Morrison
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
http://www.mtsprofessional.com/
   A Win32 email server that works for You.

Reply via email to