Hi
Here's My Situation:
-------------------------------------
I have an XML file which contains user created data. It can have maybe 10,000
or more nodes. The XML needs to be queried infrequently for use in the
application, in a way that lends itself more to SQL. For example the only query
that I will use is
"SELECT * FROM myTable WHERE BookID IN (2,3,4,5,7,8,23,24,25,26,27,38,67,66)"
That's a good example. The IN parameters can vary with numbers ranging form 1
to 66.
IN COMES SQLITE3
---------------------------------------
So I decided to pull all the XML nodes into the Sqlite3 databse at
application start up.
But I have discovered some slowness.
So far I have simply reused the quick start code.
I modified it to do the following:
1. Open the Database.
2. Drop the 2 tables if they exist in the database
3. Created 2 tables if not exist - Lookup_BookID and Question
LookupID has a primary key on BookID and Question has no index.
4. Then I simply insert 66 records into lookup_bookID at application start up.
Well simply by inserting 66 3 field records into my LookupID , I count 7
seconds.
So it makes me a bit concerned that when I have to drop my XML repository
with 7,000 to 10,000 records it will take forever at application start up ?
Is there a way to execute all these inserts much faster than I am currently
doing ?
I am currently simply using sqlite3_exec(db, "INSERT SQL STATEMENT ", ... etc
etc )
for every single insert statement.
Is there away to maximize this speed dramatically to do 10,000 inserts in
less than 5 seconds.
Thanks
Stephen
---------------------------------
Yahoo! oneSearch: Finally, mobile search that gives answers, not web links.