On Thu, Jan 23, 2014 at 1:33 AM, dean gwilliam <[email protected]> wrote: > I'm just wondering what my options are here? > Any advice much appreciated. > _______________________________________________
My two cents... Historically I took Aducom TDataSet-compatible classes (http://www.aducom.com/cms/page.php?2 , author - Albert Drent) and used it ever since, but along the road there were many changes that I made, so I'm not sure I can recommend one of the current (last version). They had static variant implemented with msvcrt linked (maybe it was removed to the moment), to remove the dependency yourself you have to implement the following functions _malloc,_realloc,_free,_memset,_strncmp,_memmove,_memcpy,_strlen,_qsort,_memcmp,_localtime part of them might be just calls to Delphi existing rtl, for another part a little work needed. This allowed me for example to monitor the number of memory requests different queries make. BCC 5.5 (freely downloadable) compiles any version of sqlite3 to object files linkable to Delphi 5 and later, the only drawback I noticed is that for memory-intensive operations (memory databases) the performance is twice as worst comparing to the dll on the site (probably VC compiled), but for databases on disk the difference is small since I/O overhead compensate it. Don't know about DISQLite3 , but one of the main performance issues when using sqlite is that BDE was made for virtual access of data with moving cursor, but it's not possible with sqlite. You have a query and you can only move forward. So, the easiest approach is to load all data, but imagine this for a very large table, activating TDataset in this case may take very long time (and space). One of the approach is to change it to load all rowids of the table and request record data on the fly based on this array. So, if you plan get best performance and don't need borland database components and controls, then your best bet is to use sqlite api or simple object wrappers around it. Otherwise, be aware that "impedance mismatch" between sqlite and BDE may cost you performance penalties depending on the library you use. Max _______________________________________________ sqlite-users mailing list [email protected] http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

