Microsoft dynamics ax requires index on each table. If there are no indexes on a table or all the indexes are disabled, a system index is automatically created. The system index is created on the recid and DataAreaid fields if the DataAreaid field exists. Otherwise the system index is created on the recid field. You can see system index in the database, but aren’t visible in the AOT.
If there are indexes on a table but none of them are unique, the runtime estimates the average key length of the existing indexes, selects the index with the smallest key length, and then appends the recid columns to create a unique index