Index: www/different.tcl ================================================================== --- www/different.tcl +++ www/different.tcl @@ -1,6 +1,6 @@ -set rcsid {$Id: different.tcl,v 1.7 2006/05/11 13:33:15 drh Exp $} +set rcsid {$Id: different.tcl,v 1.8 2006/12/18 14:12:21 drh Exp $} source common.tcl header {Distinctive Features Of SQLite} puts {

This page highlights some of the characteristics of SQLite that are @@ -106,15 +106,19 @@ 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 + As far as we can tell, the SQL language specification allows the use + of manifest typing. Nevertheless, most other SQL database engines are + statically typed and 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. + of SQLite feel very strongly that this is a feature. The use of manifest + typing in SQLite is a deliberate design decision which has proven in practice + to make SQLite more reliable and easier to use, especially when used in + combination with dynamically typed programming languages such as Tcl and + Python. } feature flex {Variable-length records} { Most other SQL database engines allocated a fixed amount of disk space for each row in most tables. They play special tricks for handling