S
Susana Abad via DotNetMonster.com
Hi,
In a ReadCommited transaction I update a row 'A' in a table. Before the transaction ends, another transaction is trying to read ANOTHER row 'B' from the same table and fill a dataset using an OleDbDataAdapter but it seems to be locked and I get a timeot error.
Using sp_lock I can see that for row 'A' the table is locked in X mode, type KEY (the table and the page are IX locked), for row 'B' the lock is KEY type and S mode and the status is WAIT.
If I try to get data from the row 'B' with an OleDbCommand.ExecuteScalar there is no problem (so, as far as I can understand means that the row itself is not locked), but I cannot get the data with and OleDbDataAdapter.Fill.
Is it not possible to do that?
Thanks
In a ReadCommited transaction I update a row 'A' in a table. Before the transaction ends, another transaction is trying to read ANOTHER row 'B' from the same table and fill a dataset using an OleDbDataAdapter but it seems to be locked and I get a timeot error.
Using sp_lock I can see that for row 'A' the table is locked in X mode, type KEY (the table and the page are IX locked), for row 'B' the lock is KEY type and S mode and the status is WAIT.
If I try to get data from the row 'B' with an OleDbCommand.ExecuteScalar there is no problem (so, as far as I can understand means that the row itself is not locked), but I cannot get the data with and OleDbDataAdapter.Fill.
Is it not possible to do that?
Thanks