Real Time Programing


How can I make recoredset that allways connected to DB and changing according to updates in the database.

I meen if I change the data in the table on the SQL server from other computer the recordset will update automatically.

Kind of "Online RecoredSet".

Who is Participating?
andyclapConnect With a Mentor Commented:
Ooops, I misinterpreted your question (I was browsing the ASP topic at the time and presumed you meant a web architecture).

A periodic refresh as mentioned by others above will keep your data in synch, but dynamic syncronisation across applications is not a feature of any of the database technologies available from VB. You could create your own architecture (such as using sockets as above) to do this, but it's not easy. It's pretty impressive for clients if you do manage to do this - they love "live" data. I use this in my current project but the architecture behind it is huge and very complicated.

>What whould happend if both users update the same record in same moment ? ?
It's up to you - there are two commonly used levels of protection:

Optimistic - no specific locking of records, so if two people update, both updates are applied, and the last one 'wins'. This is commonly used in conjunction with a timestamp value which is checked on the update against the original value to ensure the user is updating the version of the record that they are looking at, usually with a "Data has changed, please refresh" message if it fails.

Pessimistic - When data is retreived, the data is locked for update and cannot be displayed for update by anyone else until the data is released again. Can cause massive contention if being used in interractive screens, usually only used in single internal processing chunks. Not really viable for a web based solution at all as there is no persistant connection so you get optimistic locking anyway.

you could just call 'requery' each time you access it...
How about using a timer with nutwiss' requery behind it?
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Éric MoreauSenior .Net ConsultantCommented:
What is your database engine?
Ryan ChongCommented:
This is well beyond what current HTML/ASP architecture is supposed to do. But it is possible with a combination of several architectures:

You'll need to do something like:
Create a java applet which uses the Netscape extensions to allow it to talk back to the controlling page (don't forget the MAYSCRIPT)
The java app will open a socket to the web server and wait for messages. When it receives a message it will call a javascript on the webpage to update the relevant fields.
On the SQL server, you can build an activeX extension to send a message to the webserver on demand. You then link this in to update triggers on the tables you want to modify.
On the web server you create an application which can accept requests from the client web pages java apps, and process messages sent from the SQL server, sending the messages out to the client java apps.

Not exactly a simple or elegant approach, but it's more or less the only feasible way you can do this with the current internet architecture.

Anybody know if SOAP can marshall events? This would help things out a lot (in simple terms SOAP is just the java socket app thingy mentioned above, using an XML message)
computech1Author Commented:

I wanna use only VB6 base on Access/SQL DB.
Don't what to mix with other architectures.

What whould happend if both users update the same record in same moment ? ?
computech1Author Commented:
What Whould happend if both users update the same record ?

You have many open questions:

To assist you in your cleanup, I'm providing the following guidelines:

1.  Stay active in your questions and provide feedback whenever possible. Likewise, when feedback has not been provided by the experts, commenting again makes them receive an email notification, and they may provide you with further information. Experts have no other method of searching for questions in which they have commented, except manually.

2.  Award points by hitting the Accept Comment As Answer button located above and to the left of that expert's comment.

3.  When grading, be sure to read:
to ensure that you understand the grading system here at EE. If you grade less than an A, you must explain why.

4.  Questions that were not helpful to you should be PAQ'd (stored in the database for their valuable content?even if not valuable to you) or deleted. To PAQ or delete a question, you must first post your intent in that question to make the experts aware. Then, if no experts object after three full days, you can post a zero-point question at community support to request deletion or PAQ. Please include the link(s) to the question(s).
At that point, a moderator can refund your points and PAQ or delete the question for you. The delete button does not work.

5.  If you fail to respond to this cleanup request, I must report you to the Community Support Administrator for further action.

Our intent is to get the questions cleaned up, and not to embarrass or shame anyone. If you have any questions or need further assistance at all, feel free to ask me in this question or post a zero-point question at CS. We are very happy to help you in this task!

community support moderator

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.