Thread View: borland.public.cppbuilder.database.multi-tier
3 messages
3 total messages
Started by Alex
Thu, 22 Jul 1999 00:00
TClientDataSet
Author: Alex
Date: Thu, 22 Jul 1999 00:00
Date: Thu, 22 Jul 1999 00:00
11 lines
796 bytes
796 bytes
Hi All! Maybe somebody will be so kind as reply on this question? I have a lookup table about 100 000 records size, all of them user needs look for results visually. Can you explain me, does all 100 000 records store by TClientDataSet in memory, or there is some data on disk. What technique shoud I use To implement such big databases. Alex.
Re: TClientDataSet
Author: John Graham
Date: Fri, 23 Jul 1999 00:00
Date: Fri, 23 Jul 1999 00:00
50 lines
2698 bytes
2698 bytes
Alex, One should rarely access all records in a data table at the same time. Your users probable only need to see records that meet some condition and those are the only records that should be accessed. If you use a TTable object in your application server's remote data module, your client dataset will attempt to download all records to your PC when you set its Active property to "true" or call its Open() method. Some of the records will be in RAM, and some of them will be in virtual memory ( hard disk ). It's very time consuming to do things this way, and you will fill up your available memory quickly. What I suggest is that you install a TQuery component in your app. server's data module, export it, and hook your client dataset to it. You can then create an instance of the remote data module's dispatch interface in your client. This can be used to send an SQL statement as well as parameters and their values to the TQuery object. This way you can display only those records that your users are interested in. For an example of how to accomplish this, see the AdHoc example in the MIDAS section of the BCB "Examples" sub directory. You might want to take a look at the EmpEdit example as well. Naturally you need to have all the collateral stuff present in your client app. as well, such as a remote connection object, grids, data sources, etc. You might also try filtering the client dataset to access only those records that are required. I'm not sure how the filter works, but it's easy to set up and activate and should be easy to test. However, I like SQL because of its flexibility and ease of use. If you're not familiar with it I respectfully suggest you get that way. Regards, John Alex wrote: > Hi All! > > Maybe somebody will be so kind as reply on this question? > > I have a lookup table about 100 000 records size, all of them user needs > look for results visually. > Can you explain me, does all 100 000 records store by TClientDataSet in > memory, or there is some data on disk. What technique shoud I use To > implement such big databases. > > Alex.
Re: TClientDataSet
Author: Michael A. Feinstein
Date: Fri, 06 Aug 1999 00:00
Date: Fri, 06 Aug 1999 00:00
55 lines
3004 bytes
3004 bytes
Another solution might be using "PacketCount" property, which tells how many records to fetch from server. John Graham wrote: > > Alex, > > One should rarely access all records in a data table at the same time. Your > users probable only need to see records that meet some condition and those > are the only records that should be accessed. > > If you use a TTable object in your application server's remote data module, > your client dataset will attempt to download all records to your PC when you > set its Active property to "true" or call its Open() method. Some of the > records will be in RAM, and some of them will be in virtual memory ( hard > disk ). It's very time consuming to do things this way, and you will fill up > your available memory quickly. > > What I suggest is that you install a TQuery component in your app. server's > data module, export it, and hook your client dataset to it. You can then > create an instance of the remote data module's dispatch interface in your > client. This can be used to send an SQL statement as well as parameters and > their values to the TQuery object. > > This way you can display only those records that your users are interested > in. For an example of how to accomplish this, see the AdHoc example in the > MIDAS section of the BCB "Examples" sub directory. You might want to take a > look at the EmpEdit example as well. > > Naturally you need to have all the collateral stuff present in your client > app. as well, such as a remote connection object, grids, data sources, etc. > > You might also try filtering the client dataset to access only those records > that are required. I'm not sure how the filter works, but it's easy to set > up and activate and should be easy to test. > > However, I like SQL because of its flexibility and ease of use. If you're > not familiar with it I respectfully suggest you get that way. > > Regards, > John > > Alex wrote: > > > Hi All! > > > > Maybe somebody will be so kind as reply on this question? > > > > I have a lookup table about 100 000 records size, all of them user needs > > look for results visually. > > Can you explain me, does all 100 000 records store by TClientDataSet in > > memory, or there is some data on disk. What technique shoud I use To > > implement such big databases. > > > > Alex.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads