title: How does SqlBulkCopy circumnavigate foreign key constraints?
body: <p>I used SqlBulkCopy to insert a collection of rows into a table. I forgot to set an integer value on the rows. The missing column is used to reference another table and this is enforced with a foreign key constraint.</p>
  
  <p>For every row inserted, the final integer value was zero and zero didn't identify a row in the related table. When I modified the value to a valid value and then tried to switch it back to zero it wouldn't accept it.</p>
  
  <p>So my question is how does SqlBulkCopy manage to leave the database in an invalid state?</p>