Is using association tables for One-to-Many relationships common practice?
For the simple case you are right and there is no need to have the separate link table for a one&lt;->many relationship.

Off the top of my head I can only think of a couple of examples where it might be a requirement to have a separate table for the relationship:


If you are tracking the history of the rows (in your business logic layer, via triggers, or "temporal tables" if Oracle supports them) and there are properties of the relationship that you don't want to track changes to in the equipment table itself. Perhaps those codes that you describe, or maybe the person currently responsible for maintaining the equipment in that location.
If you envisage needing to support a many&lt;->many relationship later.
Though that seems rather unlikely in this case.
If you have to support some oddity in a legacy framework which requires link tables for all relationships (which is plausible as you already describe needing to work around other legacy oddities).
It is simple local practise to work this way (obviously this does not make it a good idea, but it might make it one you don't have authority to fight against!)