Microsoft KB Archive/190496

= PRB: SEEK Finds Old and New Data With Optimistic Buffering =

Article ID: 190496

Article Last Modified on 5/12/2003

-

APPLIES TO


 * Microsoft Visual FoxPro 3.0 Standard Edition
 * Microsoft Visual FoxPro 3.0b Standard Edition
 * Microsoft Visual FoxPro 5.0 Standard Edition
 * Microsoft Visual FoxPro 5.0a
 * Microsoft Visual FoxPro 6.0 Professional Edition

-



This article was previously published under Q190496



SYMPTOMS
When you use the SEEK command to find data and then replace that data with another value, SEEK finds both the old value and the new value if the buffering is set to optimistic table buffering.



RESOLUTION
Set the buffering to optimistic row buffering or pessimistic buffering.



STATUS
Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.



MORE INFORMATION
The Customer table, used in the Sample Code example, ships as sample data in Visual FoxPro 3.0x, 5.0x, and 6.0. Before running the program, use the SET DEFAULT TO command to point to the folder that contains the Customer table.

Steps to Reproduce Behavior
Issue the following commands in the Command window or create a .prg file and run the program.

Sample Code
SET MULTILOCKS ON  USE customer =CURSORSETPROP('Buffering',5) SET ORDER TO cust_id ?SEEK('AROUT') REPLACE CUST_ID WITH 'AROUS' ?SEEK('AROUT') ?SEEK('AROUS') Note that the SEEK function returns true for the old value "AROUT" and for the new value "AROUS". Setting the buffering to optimistic row buffering or to pessimistic buffering, allows the SEEK function to find only the new value.

Additional query words: kbVFp300b kbVFp300 kbVFp500 kbVFp500a kbVFp600 kbXBase

Keywords: kbprb kbpending KB190496

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.