• I tested this with the following query:

    Begin tran A

    update TL_CST_Account set AccountTitle = 'Shamshad-windows' where AccountId = 10001000010021

    The idea is, if we are running an update on a table for a particular row in a transaction scope then, it should not lock whole table for other users to run select, update or delete query. If the above row is not committed, I can't run select * from Table with no where clause.

    but if i run select * from table where accountId = "some other account", it works ...

    select * from TL_CST_Account where accountId = 10001000010017 -- this runs successfully because I am selecting other account from same table

    select * from TL_CST_Account where accountId = 10001000010021-- this won't run until i commit update query

    select * from TL_CST_Account -- this won't run

    select * from TL_CST_Account where accounttitle like '%shamshad%' -- this won't run until i commit update query

    Generally, it should not lock whole table only the row that is under transaction scope.

    Shamshad