PRB: Oracle Servers Convert Empty Strings to NULL (225070)
The information in this article applies to:
- ActiveX Data Objects (ADO) 1.5
- ActiveX Data Objects (ADO) 2.0
- ActiveX Data Objects (ADO) 2.01
- ActiveX Data Objects (ADO) 2.1
- ActiveX Data Objects (ADO) 2.1 SP2
- ActiveX Data Objects (ADO) 2.5
- ActiveX Data Objects (ADO) 2.6
- ActiveX Data Objects (ADO) 2.7
This article was previously published under Q225070 SYMPTOMS
When you update a record that contains a variable-length string field that was previously set to the empty string, you receive the following Visual Basic run-time error 80040e38:
The specified row could not be located for updating; Some values may have been changed since it was last read.
CAUSE
When setting a field to the empty string, Oracle servers automatically convert the empty string to NULL, but the object requesting the edit is not notified. The next time an edit is performed, the empty string is used to identify the record to update, and it is not found because the server now contains a NULL.
RESOLUTION
Two methods to resolve this follow:
- Convert empty strings to NULL before editing a recordset object and submitting the update.
-or- - Execute the Recordset object's Resync method after editing.
Modification Type: | Major | Last Reviewed: | 8/23/2001 |
---|
Keywords: | kbDatabase kbDSupport kbOracle kbprb KB225070 |
---|
|