1. A method for searching a computer database to produce search results from queries containing errors, comprising the steps of indexing features and fields of the computer database, including words and phonetic encodings of the words; receiving a computer database query from a user; rough scoring the computer database query against database records, including extracting words from the computer database query; assigning match scores to query words matching the computer database features; assigning approximation scores to the computer database query words amenable to approximation analysis with the computer database features; and identifying a set of computer database records for further analysis; rescoring the set of identified computer database records, based on matching the individual computer database query words and individual record fields, and matching at least one phrase of words in the query and multiple fields in the database record; and providing output to the user based on the results of the rescoring step.