title: One to Many, but Identifying One of the Many as the 'Default'
body: <p>I have a tables <em>Person</em> and <em>Address</em>.  A <em>Person</em> can have multiple <em>Address</em> records, so a simple 1..* relationship with <em>Address</em> having a field referencing 'Person ID'.</p>
  
  <p>Now, for a given <em>Person</em> I wish to identify their 'default' or 'primary' <em>Address</em>.</p>
  
  <p>I've came up with two ideas, but I'm not convinced about either.  Before I decide, can anyone offer any comments with regards to potential issues I could face down the line with either option...</p>
  
  <p>(a). Could have a 'Default Address ID' on <em>Person</em> which would store the
      ID of the default <em>Address</em> record.  Possible pitfall here is that
      an <em>Address</em> not belonging to this <em>Person</em> could be set here, so
      would need an additional check constraint to prevent this.</p>
  
  <p>(b). Could have a 'Default' flag on the <em>Address</em> table, but this has the
      possibility of allowing multiple selections, so would need further
      checks so that when setting the flag, it is also cleared on all
      records belonging to the same <em>Person</em>.</p>
  
  <p>Any</p>