Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Record Locking - Against SQL Server

Posted on 2002-04-23
6
170 Views
Last Modified: 2010-05-02
I'm using VB6 against an SQL Server 7 database.
I'm having trouble coding for a case where more than one user is accessing the same record.
If a user makes changes to the record and saves the record, the record should be saved and refreshed on the server.
The application consists of a datagrid in which the user can double-click on a record in the grid to make changes.
Then, a form is brought up to allow the user to make changes.
The way the code is written now is this:
After the user exits the form after having made changes, I run the same sql statement again to refresh and populate the grid.
But, this isn't working.
The update is only working on the machine where the user made the changes.
On other client computers accessing the grid at the same time, the changes aren't updated.

Is there some sort of commit I need to make to save all of the changes up-to-the-minute?

Thanks in Advance
John
0
Comment
Question by:jtrapat1
6 Comments
 
LVL 75

Expert Comment

by:Anthony Perkins
ID: 6964206
Are you using the ADO Data Control?  If so, this might explain the problem.

Anthony
0
 
LVL 17

Expert Comment

by:inthedark
ID: 6964210
There is an issue here with the way that multiple users are responsible for the same data.  What type of application is it? Could the user's responsibilities be divided?
0
 
LVL 5

Expert Comment

by:dgorin
ID: 6964308
You could try a CursorType property of 2 in your ADODC or the code that opens your recordset.  If you're using ADO, anyway.
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:jtrapat1
ID: 6965649
I'm not using the ADO data control.
I'm using a recordset as a data source for the datagrid and it's still not updating for each concurrent user.

This is a client-server application.


0
 

Author Comment

by:jtrapat1
ID: 6965688
I'm not using the ADO data control.
I'm using a recordset as a data source for the datagrid and it's still not updating for each concurrent user.

This is a client-server application.


0
 
LVL 1

Accepted Solution

by:
barendb earned 200 total points
ID: 6971331
You need to requery all users' recordsets periodically, because they will only see data up to the last change that they have made.  Try the following, update a record on one user's machine, save changes.  Now update another record on another user's machine and save the changes, you should be getting botth changes back on the second machine, because you requery after the update.
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Enums (shorthand for ‘enumerations’) are not often used by programmers but they can be quite valuable when they are.  What are they? An Enum is just a type of variable like a string or an Integer, but in this case one that you create that contains…
You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

790 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question