anchor.diff:  [<Test>]
   let ``duplicate field names are NOT supported``() =
       let c = withNewDbFile()
  -    Sql.execNonQueryF c "insert into address (id, street, city) values (%d, %s, %s)" 1 "fake st" "NY" |> ignore
  -    Sql.execNonQueryF c "insert into person (id, name, address) values (%d, %s, %d)" 5 "John" 1 |> ignore
  +    Sql.execNonQueryF c "insert into person (id, name) values (%d, %s)" 5 "John" |> ignore
  +    Sql.execNonQueryF c "insert into address (id, street, city, person) values (%d, %s, %s, %d)" 1 "fake st" "NY" 5 |> ignore
       use reader = Sql.execReader c "select * from person p join address a on a.id = p.address" []
       assertThrows<ArgumentException> (fun () -> reader |> List.ofDataReader |> ignore)
       ()
  
positive.code: 
  let getMany conn = 
      for i in 1..50 do
          insertUser conn {id = i; name = "pepe" + i.ToString(); address = None}
      let first10 = Sql.execReaderF conn "select * from person" |> Seq.ofDataReader |> Seq.truncate 10
      for i in first10 do
          printfn "%d" (i?id).Value
  
negative.code:     transactionWithException (withNewDbFile())
  
  let someTran conn =
      insertUser conn {id = 1; name = "pepe"; parent = None}
      insertUser conn {id = 2; name = "jose"; parent = None}
      ()
  
  let transactionCommitted conn =
  