ID: Q124880
The information in this article applies to:
The FIND command does not reliably locate numeric values when searching an indexed field for a value.
Use the SEEK command instead. FIND is included for backward compatibility, however it is preferable to use the SEEK command.
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.
Run the following code to demonstrate this behavior. Note that the SEEK command reports finding the specified value, while the FOUND command does not.
CLOSE DATABASES
SELECT 1
CREATE TABLE testtab (numfield N(10))
USE
USE testtab IN 1
GO TOP
FOR i = 1 TO 10
APPEND BLANK
REPLACE testtab.numfield WITH i
ENDFOR
INDEX ON numfield TAG numfield ADDITIVE
USE
USE testtab IN 1
SET ORDER TO 1
FIND(7)
IF (FOUND())
WAIT WINDOW "FIND found record with value of 7!"
ENDIF
GO TOP
SEEK(7)
IF (FOUND())
WAIT WINDOW "SEEK found record with value of 7!"
ENDIF
Additional reference words: FoxWin 2.60a buglist2.60a
KBCategory: kbprg kbbuglist
KBSubcategory: FxprgGeneral
Last Reviewed: June 27, 1995