Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations IamaSherpa on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Interbase Components?

Status
Not open for further replies.

EricDraven

Programmer
Jan 17, 2002
2,999
GB
I have converted the old TTable components in my application to TIBTable components, but I am actually seeing a decrease in speed thus far! I am sure that this is because to get the system running, I had to replace my old FindKey statements with locate which is a lot slower!

What would be the quickest way to access the data now? I would guess that it would be to use TIBQuery components and SQL statements but I am unsure!

Any pointers, as always, will be greatfully received!

Is that the light I can see...


When your feeling down and your resistance is low, light another cigarette and let yourself go [rockband]
 
Hi,

TIBtable is a very slow component. Actually it is a wrapper round TIBquery. It is made for lazy programmers. Start using TIBquery and the speed of the application will increase.

Steph [Bigglasses]
 
You could use IBQuery or TQuery, don't use a table component.

Use table components on small tables, that won't grow fast.

Big tables, use only queries.
What actually happens is that with a table, all the data is send to the Client, don't matter locate findkey or findnearest, things that work great for "desktop tables", because all these commands must be converted to SQL.

Time the accesstime to a table with a query using select from .. where against using a table with locate.

There is a FAQ in the Delphi area that deals with queries and search capabilities faq102-3597

Steven van Els
SAvanEls@cq-link.sr
 
Svanels
This confirms what I thought. Also that I have a fair bit of coding ahead of me! I have just read through your FAQ as my knowledge of SQL is limited to "Select .. from .. where .. order by", and as per usual, I have a question to ask!

I remember reading a post in the Delphi forum very recently by lespaul (the guitar???) in which he was having speed problems using several queries. Weez advised that it was due to the parambyname function which you make use of in the FAQ. Having removed them he noticed a great increase in speed. Was this a one off case or is this likely to affect speed in my application too? If so, is there any alternative code examples you can point me to?

Sorry to be a pain in the a***, but before Monday I didnt even know exactly what Interbase could do and I am having to learn at an incredible rate! Without you guys I would have been stumped sometime around monday afternoon methinks!

Many thanks


When your feeling down and your resistance is low, light another cigarette and let yourself go [rockband]
 
In how much the parameterbyname function is slowing things down, I didn't know, but when you use variables in SQL like :myvar, in the parameter property of the query it comes available.
It is like making a form in runtime from code against designing it visually.

I think Lespaul problems are related to the traffic on the network, remember we were talking about over 40 phisical tables, and that puts a lot of burden on your server and network, especially when you redundant code.

Eric I learned SQL by using the database desktop and the graphical query builder. After building a query, I examined the SQL code, and that is the way I learned it. Interbase have some great documentation files that are in PDF format.

If you can put hands on a database book, I advise to get Delphi 3 Client/Server Developer's Guide from Ken Henderson (maybe you can find it second hand)

My second favourite is Delphi 4 Developer's Guide from Steve Texeira & Xavier Pacheco.

Regards

Steven van Els
SAvanEls@cq-link.sr
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top