Sybase and MsSql use the same historical code base. Back to the old days (pre sql 2000) and Sybase of the same era. None of the providers solved their blocking problems. They can get into a deadlock situation. The problem was the logic that they used. Imagine a deadlock situation, for example, driving a car when it stops at 4 speeds. Imagine if the rules say give way when two records (cars) appear at the same time. This works fine, except in situations where 4 cars arrive all at the same time, each of which tries to give way to the car on the right. You get a deadlock. On the same day, the database administrator will have to select an entry to kill this transaction (blocking its completion),to allow the deadlock to clear. Later, MsSql implemented logic where it automatically selects the record to be killed. They also improved their locking logic, so deadlocks are much less common with future versions. Therefore, sometimes it works, and sometimes it does not work, because your record was chosen so that it could be stopped or other deadlocks ended, allowing you to process your record.
Oracle . , . , , , Sybase/MsSql . MsSql , Sql 7 sql 2000, . Sybase, , .
, . . , . , , . ( ). , , .