title: Why the transaction insert 2 values when fails the first one?
body: <p>I have this Table:</p>
  
  <pre><code>TableAB
  {
      IDTableA;
      IDTableB;
  }
  </code></pre>
  
  <p>I have one row in the table, (1,2). Now I want to insert some others values, and I want to do it in a transaction. I use this:</p>
  
  <pre><code>begin
  insert into TableAB (IDTAbleA, IDTAbleB) VALUES(1,2);
  insert into TableAB (IDTAbleA, IDTAbleB) VALUES(1,3);
  insert into TableAB (IDTAbleA, IDTAbleB) VALUES(1,3);
  commit
  </code></pre>
  
  <p>I get an error of integrity in the first insert, but the second and third insert, insert the values in the table.</p>
  
  <p>How I am using a transaction and fails the first one, why does it insert the other two rows? I thought inside a transaction, if somethings fails, all is aborted. Then in this case, which is the difference to use the transaction and don't use it?</p>
  
  <p>Thanks.</p>