Hacker News new | past | comments | ask | show | jobs | submit login

The article knowledge has been lost to time. In "relational databases" you always name the foreign key as the relationship between tables.

From "A Practical Guide to Relational Database Design" from the year 2000. "Each relationship line should carry a pair of descriptive elements, which define the nature of the association between entities. A name is a single word or descriptive phrase; it should always contain a verb such as: owns, owned by, holds, administered by, etc. Examples from our simple model are: A PART is sold on an ORDER LINE. An ORDER LINE is placed for a PART."

But, this has been lost because the practicality is that it is hard to know what is the element. As other comments points.

Probably the best is both worlds: PersonId_Owner. PersonId_Veterinary. Or something similar.

It seems that such a discussion should have been solved decades ago. And here we are. :)

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact