Help on Delphi Client/Server 4.0 Inventory Program.. Help....!!

Help on Delphi Client/Server 4.0 Inventory Program.. Help....!!

Post by Artem Kornilo » Sun, 31 Dec 1899 09:00:00



Quote:> I made an inventory program by Delphi 4.0 Client/Server version and
> connected with the MS SQLserver 6.5
> However, many user complain the speed , such as open table need 4-10
> seconds, update needs over 10 seconds or even more.
> Why this happening???

Do you use CachedUpdates?
If no use them.
 
 
 

Help on Delphi Client/Server 4.0 Inventory Program.. Help....!!

Post by Dick Won » Sun, 31 Dec 1899 09:00:00


I made an inventory program by Delphi 4.0 Client/Server version and
connected with the MS SQLserver 6.5
However, many user complain the speed , such as open table need 4-10
seconds, update needs over 10 seconds or even more.
Why this happening???

I have a database component with many stored procedure component. Then many
datasource point to the stored procedure..

Is it the right way to do that ??

I really want to get help on this from your helps. Since I really suffer by
this. Sometimes, my application seems to hang, just display a cursor and it
block the resources that other user needs. Help..


Thanks for your attention and help.

Regards,
 * Wong

 
 
 

Help on Delphi Client/Server 4.0 Inventory Program.. Help....!!

Post by Dick » Sun, 31 Dec 1899 09:00:00


Yes. I use the cached Updated.

Quote:>> I made an inventory program by Delphi 4.0 Client/Server version and
>> connected with the MS SQLserver 6.5
>> However, many user complain the speed , such as open table need 4-10
>> seconds, update needs over 10 seconds or even more.
>> Why this happening???

>Do you use CachedUpdates?
>If no use them.

 
 
 

Help on Delphi Client/Server 4.0 Inventory Program.. Help....!!

Post by Bj?rge S?the » Sun, 31 Dec 1899 09:00:00


Hi !

Have you tried to run your calls outside the application, to compare the time consumption ? This
would point to either an ineffective database structure (look at index usage) or ineffective
application code (or both, of course). I've no experience with MS SQL, but Oracle has a trace
utility that also registers the time spent to effectuate every SQL call and info about the selection
method. Maybe MS SQL has something similar ?

--

Bjoerge


Yes. I use the cached Updated.

Quote:>> I made an inventory program by Delphi 4.0 Client/Server version and
>> connected with the MS SQLserver 6.5
>> However, many user complain the speed , such as open table need 4-10
>> seconds, update needs over 10 seconds or even more.
>> Why this happening???

>Do you use CachedUpdates?
>If no use them.

 
 
 

Help on Delphi Client/Server 4.0 Inventory Program.. Help....!!

Post by Dick » Sun, 31 Dec 1899 09:00:00


If I use the SQL utility to add or update record or search, it is very very
fast but if through our application program will become slow. I think it is
the problem of the front-end so that's why I want to know how to improve
it..
Any Suggestion ??

Bj?rge S?ther ???g??31 ...

Quote:>Hi !

>Have you tried to run your calls outside the application, to compare the

time consumption ? This
Quote:>would point to either an ineffective database structure (look at index

usage) or ineffective
Quote:>application code (or both, of course). I've no experience with MS SQL, but
Oracle has a trace
>utility that also registers the time spent to effectuate every SQL call and

info about the selection
>method. Maybe MS SQL has something similar ?

>--

>Bjoerge


>Yes. I use the cached Updated.

>>> I made an inventory program by Delphi 4.0 Client/Server version and
>>> connected with the MS SQLserver 6.5
>>> However, many user complain the speed , such as open table need 4-10
>>> seconds, update needs over 10 seconds or even more.
>>> Why this happening???

>>Do you use CachedUpdates?
>>If no use them.

 
 
 

Help on Delphi Client/Server 4.0 Inventory Program.. Help....!!

Post by Bj?rge S?the » Sun, 31 Dec 1899 09:00:00


a) Make sure you don't do anything that involves accessing RecordCount or otherwise forces the
entire result set to be loaded. It's a common error to do. RecordCount may force ALL records to be
read.

b) use DisableControls/EnableControls to prevent excessive field accesses and cursor movements,
especially when using master/Detail links.

Good luck...!
--

Bjoerge


If I use the SQL utility to add or update record or search, it is very very
fast but if through our application program will become slow. I think it is
the problem of the front-end so that's why I want to know how to improve
it..
Any Suggestion ??

Bj?rge S?ther ???g??31 ...

Quote:>Hi !

>Have you tried to run your calls outside the application, to compare the

time consumption ? This
Quote:>would point to either an ineffective database structure (look at index

usage) or ineffective
Quote:>application code (or both, of course). I've no experience with MS SQL, but
Oracle has a trace
>utility that also registers the time spent to effectuate every SQL call and

info about the selection
>method. Maybe MS SQL has something similar ?

>--

>Bjoerge


>Yes. I use the cached Updated.

>>> I made an inventory program by Delphi 4.0 Client/Server version and
>>> connected with the MS SQLserver 6.5
>>> However, many user complain the speed , such as open table need 4-10
>>> seconds, update needs over 10 seconds or even more.
>>> Why this happening???

>>Do you use CachedUpdates?
>>If no use them.

 
 
 

Help on Delphi Client/Server 4.0 Inventory Program.. Help....!!

Post by Art Skosa » Sun, 31 Dec 1899 09:00:00


I think that cached updates don't fit to such a case. They are for multiple
updates that's why they called "cached updates". IMHO, the main reason of
very slow table opening/updating is in that: when you open a table via
TTable.Open(), the BDE fetches some amount of records and if the table on
server is large this might take a significant time. As for low perfomance
when updating tables, there is the same reason: when you update table, BDE
must refetch all the records to synchronize contents of TTable and table on
server. How to avoid this? Try to do NOT use TTable, use TQuery instead,
this improves dataset navigation and search very much! Also you can redesign
your application so it will not use neither TTable nor TQuery returning all
the records from table on server. Try to limit number of records that come
to client application. Use stored procedures to update tables. Let me tell
you once more that TTable usage with SQL databases is very inefficient.

So, if you find my ideas useful, it's great.

> Yes. I use the cached Updated.

> >> I made an inventory program by Delphi 4.0 Client/Server version and
> >> connected with the MS SQLserver 6.5
> >> However, many user complain the speed , such as open table need 4-10
> >> seconds, update needs over 10 seconds or even more.
> >> Why this happening???

> >Do you use CachedUpdates?
> >If no use them.

 
 
 

1. HELP HELP !! Netbios programming over Delphi 2.0

Hi folks,

I am currently facing the following problem:

A windows 95 Host has to communicate via Netbios to some other DOS clients.
Unfortunately the described function from Borland does not work at all. It
seems to be that the netbios.dll is not even loaded at the host.

Did I configure the windows95 host wrong ( Button "use Netbios over IPX/SPX"
is active ) or does someone has any clues for this problem or faced the same
some time ago ??

Any help would be appreciated..

Thanks Marcus


2. Auditing changes made to table design (syscolumns table)

3. Need help accessing client/server btrieve tables with Delphi

4. HELP!!!!

5. HELP with ODBC and UNIX<->MS-Windows client/server programming

6. SQL99 doc update

7. Help: Delphi 16 bit client to MS SQL Server 6.0

8. Modify a default constraint

9. help,help,help,help,help,help,help,help,help,help,help,help,help,

10. My Foxpro program won't work in Windows NT 4.0 __Help__

11. Help,Help,Help,Help,Help,Help,Help,Help,Help,Help,Help,Help,Help,Help,Help,Help,Help,Help,