Link to home
Start Free TrialLog in
Avatar of agl
agl

asked on

In-Memory Database

I have a 3 tier Application. In the middle tier, which is in the form of active X Exe, i want to get data into the middle tier from the database and maintain it in-memory till the exe is being used.
Please suggest how to maintain the data other than disconnected recordsets
Avatar of nigelrowe
nigelrowe

Store it in arrays?
ASKER CERTIFIED SOLUTION
Avatar of andyclap
andyclap
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Just curious, what do you have against disconnected recordsets?
<ping>.. Listening
Avatar of agl

ASKER

Joebob

We have used disconnected recordsets in the application using collections along with it.But performance is hampered as we keep as many as 100000 records at a time in memory and using recordsets we have to scroll through each and every record to get to the one we want to process.
So we want a system where we can use sql queries(select,update,insert,delete) and get records in one shot rather than scrolling through them.



Why not use the filter property of the recordset.  With tht filter property, ADO searchs the records for you using the indexes that it retrieved from the database.  I assume the fields you want to search by are indexed fields.  By using disconnected recordsets and this property, you should have a in-memory db with good performance at the same time.

If this still doesn't give you the performance you need, then your only real choice is to convert the records into a sorted list that you can use a binary search on.  But of course you can actually do a binary search on a recordset also by using the move method and specifying the record to jump to.
Thank you for your interest in Expert’s Exchange. We hope that this information has assisted you in diagnosing your problem. Please award the experts who diligently helped you to find a solution (if any) or request a moderator to PAQ or delete this question. I will check back in seven days to see if a response was given. If not this will be turned over to a moderator for a decision. Thank you!

Your options are:

1. Accept a Comment As Answer (use the button next to the Expert's name).
2. Close the question if the information was not useful to you. You must tell the participants why you wish to do this, and allow for Expert response.
3. Ask Community Support to help split points between participating experts and include the details (expert name and point values to each).
4. Delete the question. Again, you must tell the other participants why you wish to do this, and only Moderators can take this action for you. Do not try to delete them directly if any comments exist, they will be pended and will not complete.

For special handling needs, please post a zero point question in the link below, include the question QID/link.
https://www.experts-exchange.com/jsp/qList.jsp?ta=commspt

Please click this Help Desk link for Member Guidelines, Member Agreement and the Question/Answer process: Click you Member Profile to view your question history and keep them all current with updates as the collaboration effort continues.
https://www.experts-exchange.com/jsp/cmtyHelpDesk.jsp


PLEASE DO NOT AWARD THE POINTS TO ME. ------------> EXPERTS: Please leave any comments regarding this question here on closing recommendations if this item remains inactive another seven (7) days.

 



My following recommended disposition:

Points to andyclap

If you have any comment or objection to the recommendation, please leave it here.

guidway
EE Cleanup Volunteer


Per recommendation, force-accepted.

Netminder
CS Moderator