Hi all, I create a table with 250 columns and this table has 30000 records, I want to select the records from the table which satisfy certain conditions. the SQL statement like this: select * from tablename where (conditions); Then use sqlite3_get_table() function to get the contents. If the record set I get is a little more, my system has not enough memory to hold them. So changed the SQL statement: select ID from tablename where (conditions); ID is a primary key in the table, first I save all of ID into a buffer, then select them through ID one by one. select * from tablename where ID=id; Here is my problems: 1. The time to get all of the ID in the table (has 30000 records) is about 40 seconds. It's too long to meet the performance required. Are there some efficient way to select a lot of records satisfied some conditions from the table in the embedded system with not so fast CPU and not enough memory? Or select certain numbers records satisfied some conditions one time, and then select several times.
2. I found the memory malloced by sqlite3_get_table() is more large than the database file when use "select * from tablename",why? _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users