title: What is the best way to implement Polymorphic Association in SQL Server?
body: <p>I have tons of instances where I need to implement some sort of Polymorphic Association in my database. I always waste tons of time thinking through all the options all over again. Here are the 3 I can think of. I'm hoping there is a best practice for SQL Server.</p>
  
  <p>Here is the multiple column approach</p>
  
  <p><img src="https://i.stack.imgur.com/BH1LP.jpg" alt="Multiple Column approach"></p>
  
  <p>Here is the no foreign key approach</p>
  
  <p><img src="https://i.stack.imgur.com/TQa7C.jpg" alt="No Foreign Key Approach"></p>
  
  <p>And here is the base table approach</p>
  
  <p><img src="https://i.stack.imgur.com/7jFE5.jpg" alt="Base table approach"></p>