What is "Internal Error 1210" and what can I do about it?
X-Contributor: Norman Mongeau <75470.1052@compuserve.com>
Internal Error 1210 occurs when the database driver discovers an
index file inconsistency with which it cannot cope. There are a
few things you can check in your code to eliminate this error:
1. Be sure that all indexes relating to a given .DBF file are open
whenever key values are updated. (In other words, don't let
your index files get out of synch with the data files.)
2. Be sure that all your index key expressions resolve to the same
length regardless of the key value. For example, you should
avoid using TRIM() on the whole key expression because it would
cause different records to have different key lengths.
3. Avoid having many duplicate keys in the same index. One simple
way to create unique keys throughout is to add something like
(STR(RECNO()) to the key expression.
4. Consider using a database driver other than DBFNTX. The
conditions that cause IE 1210 do not occur in the other
drivers.
5. If you use DBCREATEINDEX() to create index files, make sure that
the key expression character parameter is consistent with the
key code block parameter. It's okay if these expressions are
not exactly the same, but they must evaluate to the same
result.