On 23 Apr 2016, at 2:46am, Igor Korot <ikorot01 at gmail.com> wrote:
> However, what I'm saying is that most DBMS out there do store the size > of the field. > > Even though I issue something like: > > CREATE TABLE test( id INTEGER, PRIMARY KEY, test1 VARCHAR(25), test2 > INTEGER(3), test3 FLOAT(25,2) ); > > if I ask for the columns information, I will get: > > id INTEGER > test1 VARCHAR 25 0 > test2 INTEGER 3 0 > test2 FLOAT 25 2 My argument is that SQLite makes no use of the number of characters. It completely ignores both the '(25)' and the '(25,2)' just like it ignores the difference between 'CHAR' and 'VARCHAR'. Because of that there is no point in it carefully separating those numbers out and reporting them to the programmer. In SQLite it would make more sense to report both the type specified in the table definition and how SQLite understood it. So you might get something like > test1 VARCHAR(25) TEXT but that isn't really necessary either. Simon.