[yunqa.de] Re: SQLite Error 11 - malformed database schema ... near "TRIGGER"

  • From: Delphi Inspiration <delphi@xxxxxxxx>
  • To: yunqa@xxxxxxxxxxxxx
  • Date: Tue, 22 Jan 2013 12:56:20 +0100

On 21.01.2013 22:31, Andy wrote:

> I had already tried that solution in between my post and yours, but it
> fails with an out of memory error after about 15 seconds, before it gets
> as far as displaying anything. I'm running Win 7-64 with 12Gb physical
> memory.

I am not surprised. I find TClientDataSet generally unstable,
inconsistent, memory demanding, and slow.

> Only 165,000 rows, but quite a lot of strings on each row.

DISQLite3 delivers 165,000 rows quickly, but TClientDataSet is the
bottleneck. Try loading the same number or records from another database
and you should see similar timings.

> SQLiteSpy starts quickly, but does it use TCLientDataSet? I don't have a
> problem unless I use TClientDataSet. If there is another way to hook the
> dataset up to a dbgrid without using TCLientDataSet it might solve the
> problem.

For performance, SQLiteSpy does not use TClientDataset. Instead, it uses
a custom grid based on TVirtualStringTree, quite similar to the one
featured in this demo:

  SQLite3\Demos\DISQLite3_Buffered_Grid

I have experimented a lot and found this by far the fastest grid
solution, both for data handling and display. As a welcome side effect,
it has not string length limits, either.

Ralf
_______________________________________________
Delphi Inspiration mailing list
yunqa@xxxxxxxxxxxxx
//www.freelists.org/list/yunqa



Other related posts: