Page 1 of 1

Performance IBCTable

Posted: Wed 16 Apr 2008 01:37
by rcmz
Hello to all

How can I improve the performance when using IBCTable ?

TIA
Ramiro

Posted: Wed 16 Apr 2008 11:53
by Plash
Please specify what operations you need to make faster.

Posted: Fri 18 Apr 2008 01:56
by rcmz
Thanks for your reply

Opening the table so ti can be used in a grid.

TIA
Ramiro

Posted: Fri 18 Apr 2008 08:09
by Plash
Properties of TIBCTable component are set for maximum performance by default. But if your table has BLOB fields, you can set DeferredBlobRead option to True to increase opening speed.

Posted: Thu 24 Apr 2008 20:32
by rcmz
Hello Again

In my Laptop after the Open of the table to the next line of code it delays 12 seconds this is too much.

How can I correct this ?

In a Lan enviroment it delays more than 12 secs.

The table at this moment haves 17000 records but it will go to 30000 that will double the delay.

Here is what i do before the Open of the table:
IBCTsocios.Connection := dm.ibConec;
IBCTsocios.TableName := 'SOCIOS';
IBCTsocios.IndexFieldNames := 'NOMBRES';
IBCTsocios.FilterSQL := '(TIPO = '+QuotedStr('A')+')';
IBCTsocios.Open;

Using Delphi 2007, FB 2.0x, ibDac 2.20.1.13

TIA
Ramiro

Posted: Fri 25 Apr 2008 09:18
by Plash
By default the TIBCTable component fetches only first 25 records when it is opened. If you set the IndexFieldNames property, all records are fetched on opening the table, and it causes the delay.

To open the table faster, you can use the OrderFields property instead of IndexFieldNames. In this case the ORDER BY clause is added to the SQL statement for opening the table, and data are sorted on the server.