New Information - SQL Server 2000 SP3.
Mismanagement of transactions often leads to contention and performance problems in systems that have many users. As the number of users in a system increases, it becomes important to have applications that use transactions efficiently. A transaction can hold some locks, such as those protecting updates, until the transaction ends. An application that allows users to control when a transaction ends presents an opportunity for a malicious user to deny access to data that is being locked. For example, it is generally a bad practice for an application to interact with a user while the application has a transaction open unless the application places a limit on how long it will wait for a user response before ending the transaction.
Microsoft® SQL Server™ also supports nesting transactions, transaction savepoints, and bound transactions, which offer programmers additional options for writing efficient transactions.