title: updateOrCreate return duplicate error while it should update
body: <p>My understanding of Laravel <strong>updateOrCreate</strong> is that if a given value exists updates the table otherwise adds a new record <strong>but</strong> I have encounter as situation that instead of updating it give me the duplicate error. This is what I have:</p>
  
  <pre><code>$e = \App\Element::updateOrCreate(
                  ['link' =&gt; $link],
                  ['title'=&gt;$title,'description' =&gt; $description]
  </code></pre>
  
  <p>This works fine but for one record I get:</p>
  
  <pre><code>SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'blahblahblah' for key 'link' 
  </code></pre>
  
  <p>I wonder why updateOrCreate doesn't work here as it should. Shouldn't it leave the <code>link</code> column as it is and update the rest?</p>