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

Reply via email to