>Hi ALeksey
>
>>Just to make it clear, SQLSETPROP(connectionhandle,"Transactions",2) is equivalent to BEGIN TRANSACTION.
>
>Is that really correct? After issuing
>SQLSETPROP( connection, "Transactions", 2 )
>
>The query: SQLEXEC( connection, 'SELECT @@TRANCOUNT' )
>returns 0 and certainly there is no behavior to suggest that a transaction has been started.
>
>However, if I use: SQLEXEC( connection, 'INSERT INTO....' )
>Then check the transaction count, I see '1', as expected.
>
>I thought that all that setting the transactions property of the connection
>to "manual" does is to require that the client must explicitly close implicit transactions with SQLCOMMIT/SQLROLLBACK?
Hi Andy,
Logically it is correct. All data reads/writes will be included into the same transaction until SQLCOMMIT()/SQLROLLBACK(). Even if backend doesn't start transaction physically, subsequent SQLCOMMIT()/SQLROLLBACK() do not fail. It is only a plus if back end is able to avoid unnecessary physical transactions.
Thanks,
Aleksey.
Précédent
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement