473,405 Members | 2,445 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,405 software developers and data experts.

The data has changed message

Ever since I moved the access 97 backend to a SQL Server backend with
Access 97 front end..some forms pop up with a The data has been
changed...Another user edited this record and saved the changes before
you attempted to save your changes. Re-edit the record. Message...when
I begin to type in the fields...then it allows me to type and save..is
there a way to block this message?

Nov 13 '05 #1
3 2365
I think that's a concurrency exception. I would read up on this,
because it may change the logic in you app (what really should happen
if a record that I have cached locally changes in the back end? Do you
want a "Last-In Wins" rule, or something more complicated?)

You could also try pessimistic locking, which will block access to a
record that's currently being edited, so this error should never occur.
Downside is, if a user starts to edit a record on Friday at 4:59 PM
and leaves the record in edit mode all weekend, no one else will have
access to it until it's released on, presumably, Monday.

Someone correct me if I'm wrong, but I think you have to handle
concurrency manually in Access if you want to use optimistic locking?
I know in .NET, you can download Microsoft's data access application
block (DAAB) which has a (sort of) built-in concurrency handling
mechanism (for anything other than a last-in wins approach.)

Thanks,
Johnny

Nov 13 '05 #2
Jimbo wrote:
Ever since I moved the access 97 backend to a SQL Server backend with
Access 97 front end..some forms pop up with a The data has been
changed...Another user edited this record and saved the changes before
you attempted to save your changes. Re-edit the record. Message...when
I begin to type in the fields...then it allows me to type and save..is
there a way to block this message?


Not block, but prevent! :-)

Adding a timestamp column to the SQL Server table may help here. The
problem can arise from floating point numbers used for storage (datetime
is stored as floating point) and there are invariably rounding errors
due to the fact that floating point numbers in IEEE format cannot
represent every fraction properly (rather like the problems in having
1/3 in decimal, e.g., 1/3 * 3 = 1, 0.333r * 0.333r = 0.999r). Access
will check the value of each column with the original one read at the
start of the record to make sure no-one has changed it since you read
it. With a timestamp column, Access will use only that column to check
for other updates and this is not prone to errors like floating point is.

--
1f u c4n r34d th1s u r34lly
n33d t0 g37 l41d

Nov 13 '05 #3
The timestamp did it...thanks!!!

Nov 13 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

32
by: Neil Ginsberg | last post by:
We're using SQL Server 7 with an Access 2000 MDB as a front end with ODBC linked tables. I recently created a new set of tables for the app, and users are complaining that unsaved data is being...
7
by: JMCN | last post by:
hello i'm trying to parse out some data from the below format. first of all, i import the text file into access97 table and the try to parse out.i have a code written but when i run it, it does...
20
by: MadCrazyNewbie | last post by:
Hey group, I keep getting the following error: "An unhandled exception of type 'System.IndexOutOfRangeException' occurred in system.data.dll Additional information: There is no row at...
30
by: Charles Law | last post by:
Here's one that should probably have the sub-heading "I'm sure I asked this once before, but ...". Two users are both looking at the same data, from a database. One user changes the data and...
7
by: PW | last post by:
Hi, I have a form with unbound fields on it. The user selects a record from a recordset and I populate the unbound fields. When I try to change the unbound quantity text box, Access 2003 tells...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.