BUG: LOOKUP() Locates Deleted RecordsLast reviewed: February 16, 1996Article ID: Q122511 |
The information in this article applies to:
SYMPTOMSThe LOOKUP() function locates deleted records even though SET DELETED is ON.
RESOLUTIONThe only way to ensure that LOOKUP() will respect the SET DELETED ON command is to ensure that a TAG (regardless of its name) on the field being looked up exists. Please see the example in the More Information section of this article.
STATUSMicrosoft 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
Program to Reproduce ProblemThe following program demonstrates the symptoms.
CREATE TABLE temp (testfield c(10)) INSERT INTO temp (testfield) VALUES ('FRED') INSERT INTO temp (testfield) VALUES ('WILMA') INSERT INTO temp (testfield) VALUES ('BARNEY') INSERT INTO temp (testfield) VALUES ('BETTY') GO 3 DELETE SET DELETED ON ? LOOKUP(Temp.TestField, "FRED", TestField) ? LOOKUP(Temp.TestField, "BARNEY", TestField)The second LOOKUP() should return a null string because the third record (the one containing BARNEY) should be hidden by the SET DELETED ON command.
Example WorkaroundInsert the following command between the last INSERT command and the GO 3 command. Then run the program example again.
INDEX ON TestField TAG TestFieldThis time the second LOOKUP() returns a null string.
|
Additional reference words: FoxWin FoxMac FoxDos 2.50 2.50a 2.50b 2.60
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |