As described in the ''Editing Spatial and Attribute Data/Editing records" topic in the documentation:
A database table must have a primary key field, which will be automatically used by AspMap to update records. The key field must be specified in the FieldList property. If the table does not have a primary key field, an exception will be thrown.
Seems as the ID field is not a primary key field.