Thanks for the quick response. My application is using 3.4.1, but I grabbed the 3.5.9 executable and got the same thing.
SQLite version 3.5.9 Enter ".help" for instructions sqlite> select * from ae_objects; 20086|sean|1|0|5.43301269412041|4.43301269412041|0.0|0.0|1|0|165|2 sqlite> select * from ae_objects where save_id=165; sqlite> select * from ae_objects where save_id like 165; 20086|sean|1|0|5.43301269412041|4.43301269412041|0.0|0.0|1|0|165|2 So I tried what your code from below and it worked for me in a new database. Strange thing though, if I do the insert from your code into my existing database, then that new record shows up when I do: sqlite> select * from ae_objects where save_id=165; But the existing record (the "sean" one) does not! > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:sqlite-users- > [EMAIL PROTECTED] On Behalf Of Noah Hart > Sent: Friday, July 11, 2008 2:24 PM > To: General Discussion of SQLite Database > Subject: Re: [sqlite] problem with simple select > > Sean, what version of sqlite are you using? > > > With the command line version it appears to work under 3.5.9 > > SQLite version 3.5.9 > Enter ".help" for instructions > sqlite> DROP TABLE if exists ae_objects ; > sqlite> CREATE TABLE ae_objects ( > ...> oid INTEGER PRIMARY KEY, > ...> name VARCHAR(64), > ...> template_id INTEGER, > ...> template_module_id INTEGER, > ...> pos_x FLOAT, > ...> pos_y FLOAT, > ...> pos_z FLOAT, > ...> facing FLOAT, > ...> sprite_id INTEGER, > ...> sprite_module_id INTEGER, > ...> save_id VARCHAR(16), > ...> save_type INTEGER ); > sqlite> > sqlite> insert into ae_objects values > (40007,1000,1,0,3.43301269412041,12.4330126941204,0.0,0.0,11,0,165,2); > sqlite> select * from ae_objects; > 40007|1000|1|0|3.43301269412041|12.4330126941204|0.0|0.0|11|0|165|2 > sqlite> select * from ae_objects where save_id = 165; > 40007|1000|1|0|3.43301269412041|12.4330126941204|0.0|0.0|11|0|165|2 > sqlite> select * from ae_objects where save_id = '165'; > 40007|1000|1|0|3.43301269412041|12.4330126941204|0.0|0.0|11|0|165|2 > sqlite> select * from ae_objects where save_id like '165'; > 40007|1000|1|0|3.43301269412041|12.4330126941204|0.0|0.0|11|0|165|2 > sqlite> SELECT * FROM ae_objects WHERE save_id<166 and save_id>164; > 40007|1000|1|0|3.43301269412041|12.4330126941204|0.0|0.0|11|0|165|2 > sqlite> > > > > Regards, Noah > > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Sean Riley > Sent: Friday, July 11, 2008 2:08 PM > To: sqlite-users@sqlite.org > Subject: [sqlite] problem with simple select > > Hello, > > I have a strange issue with a seemingly simple query. > > The table schema: > > CREATE TABLE ae_objects ( > oid INTEGER PRIMARY KEY, > name VARCHAR(64), > template_id INTEGER, > template_module_id INTEGER, > pos_x FLOAT, > pos_y FLOAT, > pos_z FLOAT, > facing FLOAT, > sprite_id INTEGER, > sprite_module_id INTEGER, > save_id VARCHAR(16), > save_type INTEGER ); > > Sequence of SQL statements executed: > sqlite> select * from ae_objects; > 40007|1000|1|0|3.43301269412041|12.4330126941204|0.0|0.0|11|0|165|2 > sqlite> select * from ae_objects where save_id = 165; > sqlite> select * from ae_objects where save_id = '165'; > sqlite> select * from ae_objects where save_id like '165'; > 40007|1000|1|0|3.43301269412041|12.4330126941204|0.0|0.0|11|0|165|2 > sqlite> SELECT * FROM ae_objects WHERE save_id<166 and save_id>164; > 40007|1000|1|0|3.43301269412041|12.4330126941204|0.0|0.0|11|0|165|2 > > Why does the "save_id = 165" fail to get any rows? I get zero rows when > I attempt to find the row by exact match of the "save_id" column, but > with a "like" or a "greater than 164 and less than 166" I get the one > row I am looking for. > > This only seems happens when that particular column is varchar(16). I > have gotten this behavior on windows and linux. Can provide a db file if > that helps. > > > ------------------- > Sean Riley > Lead Programmer, Areae Inc. > "All problems in computer science can be solved by another level of > indirection", Butler Lampson, 1972 > > _______________________________________________ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > > > > CONFIDENTIALITY NOTICE: > This message may contain confidential and/or privileged information. If > you are not the addressee or authorized to receive this for the addressee, > you must not use, copy, disclose, or take any action based on this message > or any information herein. If you have received this message in error, > please advise the sender immediately by reply e-mail and delete this > message. Thank you for your cooperation. > > > _______________________________________________ > 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