Improvements
I just updated SQLite3ProfessionalPlugin to version 2.0.2.
I'll release it in the next days.
This version has two new internal methods, AttachDatabase and DetachDatabase. Using them with an in-memory database for caching 50000 records (with SQLiteRecordSet) now takes 0.7 seconds from about 2.5 seconds of the previous version (the while loop used to insert records in the in-memory db caused the slowdown ). This is about a 400% speed-up and all the code is written in RB.
The trick is to attach the original db to an in-memory database and then for the insert I am doing somethink like:
INSERT INTO rs (...) SELECT * FROM table
As the previous version the SQLiteRecordSet class is released in source code format so you are free to examine or modify it.
I also added a new method (written in RB) SQLCacheSelect (sql as string) as SQLiteRecordSet that simplify a lot all the query that needs to be cached (please note that rs.RecordCount works fine if you use the new SQLCacheSelect method).
I'll release it in the next days.
This version has two new internal methods, AttachDatabase and DetachDatabase. Using them with an in-memory database for caching 50000 records (with SQLiteRecordSet) now takes 0.7 seconds from about 2.5 seconds of the previous version (the while loop used to insert records in the in-memory db caused the slowdown ). This is about a 400% speed-up and all the code is written in RB.
The trick is to attach the original db to an in-memory database and then for the insert I am doing somethink like:
INSERT INTO rs (...) SELECT * FROM table
As the previous version the SQLiteRecordSet class is released in source code format so you are free to examine or modify it.
I also added a new method (written in RB) SQLCacheSelect (sql as string) as SQLiteRecordSet that simplify a lot all the query that needs to be cached (please note that rs.RecordCount works fine if you use the new SQLCacheSelect method).

0 Comments:
Post a Comment
<< Home