Hello:

I continue to work in the implementation of the 3.0 protocol in C#, i'm making a test that consist on:

- Create a database.
- Create a table in the new database.
- Start transaction.
- Insert 100 rows of data in the new table.
- Commit transaction.

For start a transaction i send a Query message with this as statement text:

START TRANSACTION ISOLATION LEVEL READ COMMITTED

For commit a transaction i send a Query message with this as statement text:

COMMIT TRANSACTION

For execute the inserts i use parametrized commands with Extended query mode, sending this sequence of messages:

- Parse & Flush ( Only for the first command )
- Describe & Flush ( Only for the first command )
- Close Portal ( begining at second command )
- Bind & Flush
- Execute & Sync

But the Sync message seems to be commiting the transaction, if i send a Flush message all works as expected with inserts, but create database & table will not work.

In the extended query mode documentation i see this:

"Note: Sync does not cause a transaction block opened with BEGIN to be closed. It is possible to detect this situation since the ReadyForQuery message includes transaction status information."

I have tested the same cycle with a BEGIN WORK but having the same problem, any idea on what i'm doing wrong ???



Tanks in advance :)






-- Best regards

Carlos Guzmán Álvarez
Vigo-Spain



---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Reply via email to