Re: SQLwaterheadretard3 (Was: Is it just me, or is Sqlite3 goofy?)



mensanator@xxxxxxx wrote:
Bruno Desthuilliers wrote:

mensanator@xxxxxxx wrote:

Probably just me. I've only been using Access and SQL Server
for 12 years, so I'm sure my opinions don't count for anything.


SQLite never pretended to be a full-blown RDBMS - just a lightweight
simple embedded database as SQL-compliant as possible.


Ah, *you* haven't read the documentation either!

"as SQL-compliant as possible"?

ROTFLMAO!

From SQLite Homepage
documentation
Available Documentation
Distinctive Features

<quote *emphasis added*>
This page highlights some of the characteristics of SQLite
that are unusual and which make SQLite different from many
other SQL database engines.

Manifest typing

Most SQL database engines use static typing. A datatype is
associated with each column in a table and only values of
that particular datatype are allowed to be stored in that
column. SQLite relaxes this restriction by using manifest
typing.

In manifest typing, the datatype is a property of the
value itself, not of the column in which the value is
stored. SQLite thus allows the user to store any value
of any datatype into any column regardless of the declared
type of that column. (There are some exceptions to this
rule: An INTEGER PRIMARY KEY column may only store
integers. And SQLite attempts to coerce values into the
declared datatype of the column when it can.)

***********************************************************
* The SQL language specification calls for static typing. *
***********************************************************

So some people feel that the use of manifest typing is a
bug in SQLite. But the authors of SQLite feel very
strongly that this is a feature.

**********************************************************
* The authors argue that static typing is a bug in the *
* SQL specification that SQLite has fixed in a backwards *
* compatible way. *
**********************************************************
</quote>

"Fixed"? Up until now, I didn't think it was possible for
crackpot theories to be implemented in computer science.
This is absolutely the craziest thing I've ever heard.

Manifest typing doesn't work *in theory*!! Sure, through
diligent data integrity management it can be made to work
in practice. But when that's applied, guess what? All your
fields end up having the same data type anyway. Duh.

And Python's inclusion of this into the standard library
is like the AMA endorsing homeopathy. It should have
been pointed out in the Python Manuals that SQLite3 is

----> NOT <----

SQL-compliant, never will be, and true SQL-compliant code

----> CANNOT <----

be made to work in this environment. So much for
"If switching to a larger database such as PostgreSQL or Oracle
is later necessary, the switch should be relatively easy."

Sorry. I have written code that started out on SQLite and migrated it to other databases. Sure, your milage may vary. But the wailing and gnashing of teeth is complete unnecessary.

That does not, of course, mean I don't have a use for a light,
simple database that's part of the standard library. But I could
have saved myself a lot of wailing and gnashing of teeth if I
hadn't been lied to by the Python documentation that, like you,
has the mistaken belief that SQLite3 is SQL-compliant.

Fixing the documentation is now becoming an enormous task.

What are the chances that anything I send in as a bug report
will simply be ignored? Kind of like the Emporer's New Clothes, eh?
It would be an admission of ignorance and stupidity on the part
of the Python Development Team, wouldn't it?

No, when they need ignorance and stupidity they normally look to the user base ;-)

I'm sure your doc patch will receive the same courteous consideration that my early suggestions for amendment did, and your name will join mine in the list of contributors.

regards
Steve
--
Steve Holden +44 150 684 7255 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://holdenweb.blogspot.com
Recent Ramblings http://del.icio.us/steve.holden

.



Relevant Pages

  • SQLwaterheadretard3 (Was: Is it just me, or is Sqlite3 goofy?)
    ... simple embedded database as SQL-compliant as possible. ... This page highlights some of the characteristics of SQLite ... A datatype is ... In manifest typing, the datatype is a property of the ...
    (comp.lang.python)
  • Re: Is it just me, or is Sqlite3 goofy?
    ... with any "heavy" database should the need arise to migrate ... Migrating data from SQLite to other ... about how the SQL Language Specification of static typing ... jeremiads on the Python list. ...
    (comp.lang.python)
  • Re: how would you...?
    ... The student also has a picture reference that depicts his GPA based on ... Should I study up on SQLite? ... There are other database modules than SQLite, ...
    (comp.lang.python)
  • Re: Is it just me, or is Sqlite3 goofy?
    ... be saying it has gasoline engine. ... SQL database, with an SQL engine. ... criticisms directed at SQLite. ...
    (comp.lang.python)
  • Re: New FreeBSD package system (a.k.a. Daemon Package System (dps))
    ... SQLite will require less resources than flat text files, ... Having a backup old-style database ... Using BDB is not an real option either. ...
    (freebsd-hackers)