--- Witold Czarnecki <[EMAIL PROTECTED]> wrote:

> SELECT TYPEOF(ROUND(1));
> ... returns 'text'. Is it OK? Sorry, I asked this question 2 days ago
> but I  still don't know - is it a bug or not?

yes but there's a fix checked in


> 2.
> sqlite> CREATE TABLE test(id INTEGER NOT NULL PRIMARY KEY UNIQUE, fld
> 
> INTEGER);
> sqlite> INSERT INTO test(fld) VALUES(1);
> sqlite> INSERT INTO test(fld) VALUES(2);
> sqlite> SELECT * FROM test;
> 1|1
> 2|2
> sqlite> SELECT * FROM test WHERE id < '2';
> 1|1
> 2|2
> sqlite> SELECT * FROM test WHERE fld < '2';
> 1|1
> 
> ... why fields id and fld behave different? Both are integers.

There's a problem with the conversion from text to integer I think.
If you remove the conversion it works:

D:\temp\convention>sqlite3 test.db
SQLite version 3.0.8
Enter ".help" for instructions
sqlite> CREATE TABLE test(id INTEGER NOT NULL PRIMARY KEY UNIQUE, fld
   ...> INTEGER);
sqlite> INSERT INTO test(fld) VALUES(1);
sqlite> INSERT INTO test(fld) VALUES(2);
sqlite> SELECT * FROM test;
1|1
2|2
sqlite> SELECT * FROM test WHERE id < 2;
1|1
sqlite>  SELECT * FROM test WHERE fld < 2;
1|1
sqlite>

note there are no quotes around the 2.




                
__________________________________ 
Do you Yahoo!? 
Yahoo! Mail - 250MB free storage. Do more. Manage less. 
http://info.mail.yahoo.com/mail_250

Reply via email to