🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: borland.public.cppbuilder.database.ado
Article #2149

ADO+Oracle -> Error 'Row cannot be located for updating. Some values may have been changed since it was last read'

#2149
From: Wencheng Chai
Date: Fri, 24 Oct 2003 04:34
48 lines
2541 bytes
Hi,

I'm using BCB6(Enterprise Suite) + Update 4 and ADO 2.8 on Windows XP, and
database is Oracle 817. Here is the simple test for the error:

1. Create a simple table.

CREATE TABLE TEST
(
 NO          VARCHAR(4)   NOT NULL,
 DESCRIPTION VARCHAR(255) ,
  /* INDEX */
  CONSTRAINT PK_TEST PRIMARY KEY (NO)
);
Note: DESCRIPTION can be NULL.

2. Create a new application.

3. Drop a TADOConnection, a TADOQuery, a TDBNavigator, a TDBGrid and a
TDataSource on the form.

4. Link ADOConnection to my Oracle 817.

5. Set "SELECT * FROM TEST" to ADOQuery and link all the items in (3).

So far, there is no one line code. Now we are going into the heart part.

Run the application. When I input some characters in field DESCRIPTION and
saved it, everything went well regardless of how many times I had tried.
However, after I cleared DESCRIPTION field and saved it - so far so good,
then I tried to input something in DESCRIPTION and saved it, I got the
error: 'Row cannot be located for updating. Some values may have been
changed since it was last read'.

If I refreshed the dataset, everything went back to normal until I cleared
DESCRIPTION and tried to save something again.

I tried the same test on Oracle 9i and got the same error.

Then tried Delphi7, same error.

Then went back to BCB6 and Orcle 817. This time, I tried to use TADOTable
instead of TADOQuery. I got one MORE error EVariantInvalidOpError with
message 'Invalid variant operation'. EVariantInvalidOpError only popped up
in IDE when I debugged it.

Thanks for any help
Wencheng
Technical Details
Message-ID: <3f98ac53$1@newsgroups.borland.com>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!newsgroups.borland.com!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 10698b,1a20c7ac709f9d05,start
X-Google-Attributes: gid10698b,public
X-Google-ArrivalTime: 2003-10-23 21:39:05 PST
From: "Wencheng Chai" <wencheng@wayahead.com.au>
Newsgroups: borland.public.cppbuilder.database.ado
Subject: ADO+Oracle -> Error 'Row cannot be located for updating. Some values may have been changed since it was last read'
Date: Fri, 24 Oct 2003 14:34:51 +1000
Lines: 50
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
NNTP-Posting-Host: 202.93.175.32
Message-ID: <3f98ac53$1@newsgroups.borland.com>
X-Trace: newsgroups.borland.com 1066970195 202.93.175.32 (23 Oct 2003 21:36:35 -0700)
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!newsgroups.borland.com!not-for-mail