Quello che ho visto in quei database che usano surrogati per tutto è il seguente:
- person_id
- account_id
- event_id
...etc
Per quanto riguarda la tua affermazione:
...however your software must know the ID name for each table.
Mi viene in mente che stai usando un framework di mappatura OR, nel qual caso dovresti seguire i consigli di quel framework. O forse stai usando uno strumento RAD che creerebbe per te tabelle, moduli e query, nel qual caso dovresti rispettare ciò che ti dà lo strumento.
Se stai modellando tu stesso il database e scrivi tu stesso le query, il suffisso _id è molto comune.
EDIT: PPDM 's Architechtural Principles fornisce anche _no come suffisso alternativo (abbreviazione per numero), dando account_no , observation_no , sequence_no ecc .:
...surrogate key components such as _ID, OBS_NO or SEQ_NO may be added
as a component of the Primary key.