On 26 Apr 2013, at 5:26pm, Stephen Chrzanowski <pontia...@gmail.com> wrote:

> ALL THAT SAID, I doubt it'd get implemented

I'm also in this category.  In fact I hope it doesn't get implemented.  Yes, 
technically it can be done.  But it's the sort of thing people assign as 
Computer Science homework.

If you're running SQLite you already have a file system.  I don't see any point 
in trying to squeeze a file system inside a DBMS inside a file system.  And 
SQLite, having been designed to be 'lite' in the first place, isn't a good 
place to do it.  That task stops only when you've implemented Posix.

If anyone is interested in pouring time into features which would be a good 
natural fit for SQLite4, here are two ideas:

A) The features currently built into FTS4 should be expressible in a more 
SQL-like way, and it should be possible implement searching many long text 
fields for combinations of kinds of text in a better way.  Devise storage 
format for something like

CREATE TOKENTABLE TABLE myTokenTable FOR myTable USING SEPARATORS (list here) 
AND STOPLIST (list here)

which uses the existing rowids in myTable to indicate which row of the 
underlying table a token appears in.  Work out semantics to allow for the 
updating of a token table after a transaction in which the underlying table is 
updated.  Work out semantics for searching the token table and the underlying 
table which are an elegant fit for SQLite3 syntax and English.  If you have 
time, write the code.

B) Work out a data structure which uses existing SQLite4 data types and can be 
used to store a table definition including all the things SQLite4 allows in the 
CREATE TABLE command.  In other words, if you were to store the information in 
the CREATE TABLE command in a structured way instead of as the commandstring, 
how would you do it ?  Your design should allow for easy implementation of some 
of the ALTER TABLE commands which SQLite3 doesn't support.  Pay great attention 
to being able to spot if command should not be completed because it breaks the 
schema.  If you have time, provide code which allows for conversion between 
string and structured representations of the CREATE TABLE command, perhaps 
using the Lemon parser for commandstring-->structure.  You do not need to worry 
about ALTER TABLE commands running quickly: assume that if one is used it can 
take as long as needed to run.

Simon.
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to