Pavel,
As I said, I am biased in favor of the benefits to there being
core-compatibility among the various implementations of SQLite but I am not
dogmatic about it, and I have no say in the matter in any case ;-)

 But  I think you may have misunderstood me:  I am not arguing that SQlite
should be compatible with PICK. They are nothing alike.  PICK is quasi-OO,
sort of like XML, with nesting depth limited to 3.  PICK is simply an
example of a database that came in many slightly different versions all of
which adhered to a core definition,  and this compatibility was a good
thing.

Regards
Tim Romano
Swarthmore PA



On Tue, Jun 29, 2010 at 11:18 AM, Pavel Ivanov <paiva...@gmail.com> wrote:

> > I think
> > SQLite implementations should probably adhere to a core spec but I
> recognize
> > this as my bias, not dogma.
>
> Probably this is my personal opinion but why should SQLite comply with
> specification of Pick Multi-dimensional databases if it never claimed
> to be multi-dimensional? SQLite is a relational database, it complies
> with standard for relational databases and relational language - SQL.
> And SQL standard doesn't define which type should be assigned to
> columns in the table created by CREATE ... AS SELECT. But even if it
> defined that special treatment of INTEGER PRIMARY KEY column as
> equivalent to rowid is definitely not in that standard - it's SQLite's
> special feature. So if you rely on that feature then your application
> doesn't conform SQL standard, so you should change your application...
> But I digress and don't mean any offence. I just want to say that
> SQLite complies with SQL standard and all other features should be
> either taken by you as is or shouldn't be used at all.
>
>
> Pavel
>
> On Tue, Jun 29, 2010 at 10:58 AM, Tim Romano <tim.romano...@gmail.com>
> wrote:
> > But there may be an argument for making the cloning more precise.  It's a
> > bit of a mess, or at least it seems so to me because my first ten years
> of
> > database work was done with PICK, a database that was developed by PICK
> > Systems but licensed to many companies and marketed under different
> brands
> > with subtle functionality differences, yet applications that adhered to
> the
> > core PICK spec were completely portable across all implementations. I
> think
> > SQLite implementations should probably adhere to a core spec but I
> recognize
> > this as my bias, not dogma.
> >
> > Adobe (and possibly Google and some others who are involved in
> coordinating
> > their SQLite implementations --I'm not fully "up" on the details of who
> all
> > are involved in that cooperative effort, or the extent to which they have
> > reconciled their implementations) treats INT primary keys as aliases for
> >  the RowId, whereas SQLite does so only with INTEGER primary keys.
> >
> > Should one ever share  a SQLite database that happens to contain tables
> > defined via the "CREATE TABLE X as SELECT..."  cloning approach with
> someone
> > who is using an Adobe-based tool, the query results returned by the
> > Adobe-based tool will not jibe with the results returned by the SQlite
> > command-line utility.  On the table with INT primary key, Adobe will be
> > fetching the row by row-id.
> >
> > If a table  has foreign-key value of 10, and is joined to a table with an
> > INT primary key, Adobe will bring over the 10th row in the table even
> though
> > the value in the primary key column of that table may or may not contain
> the
> > number 10.
> >
> > In Adobe:
> >
> > CREATE TABLE FOO (id INT PRIMARY KEY, name TEXT)
> > insert into FOO(1,'Groucho')
> > insert into FOO(2,'Chico')
> > Insert into FOO(999, 'Harpo')
> >
> > the row id of Harpo's row is 3 (it's PK value is 999) and Harpo will be
> > returned by a join when the foreign key  = 3 not when the foreign key =
> 999.
> >
> >
> > Regards
> > Tim Romano
> > --
> > Most people assume one is wearing underwear.  Not so for intelligence.
> >
> >
> > On Tue, Jun 29, 2010 at 9:46 AM, Jay A. Kreibich <j...@kreibi.ch> wrote:
> >
> >> On Tue, Jun 29, 2010 at 06:59:18AM -0400, Tim Romano scratched on the
> wall:
> >> > CREATE  TABLE "main"."proto" ("id" INTEGER PRIMARY KEY  AUTOINCREMENT
> >>  NOT
> >> > NULL , "name" TEXT)
> >> > CREATE  TABLE "main"."clone"  as select * from PROTO
> >> >
> >> > The primary key of table CLONE is defined as "INT" not "INTEGER".
> >>
> >>   The only information preserved by CREATE TABLE ... AS SELECT is the
> >>  column affinity (not "type").  These are equivalent, and both
> >>  translate to an INTEGER affinity.
> >>
> >>
> >>
> >>  ...which actually surprises me, since I was under the impression
> >>  CREATE TABLE ... AS SELECT always produced NONE affinities.  Is this
> >>  a semi-recent (last year) change?
> >>
> >>   -j
> >>
> >>
> >> --
> >> Jay A. Kreibich < J A Y  @  K R E I B I.C H >
> >>
> >> "Intelligence is like underwear: it is important that you have it,
> >>  but showing it to the wrong people has the tendency to make them
> >>  feel uncomfortable." -- Angela Johnson
> >> _______________________________________________
> >> sqlite-users mailing list
> >> sqlite-users@sqlite.org
> >> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
> >>
> > _______________________________________________
> > sqlite-users mailing list
> > sqlite-users@sqlite.org
> > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
> >
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to