>>>Your index on the table needs to match the query var as in Upper(trim(word))=Upper(trim(.....
>>>
>>>
>>No, upper(word) should work fine. You don't use TRIM in indexes.
>
>Uh, yes I do use trim in indexes and it makes the search extremely fast. Try it before you discount it.
Index expressions should be of fixed length, or otherwise, the length is unpredictable (will be based on whatever is in the first record), since Visual FoxPro will maintain a fixed length.
If you do use trim(), rtrim(), or anything else that makes for a variable-length index, in part of the expression, you must pad the entire index expression to a fixed length, for example, with padr().
Difference in opinions hath cost many millions of lives: for instance, whether flesh be bread, or bread be flesh; whether whistling be a vice or a virtue; whether it be better to kiss a post, or throw it into the fire... (from Gulliver's Travels)