Check it:
http://www.dbtalk.net/microsoft-public-sqlserver-clients/select-rows-database-lock-150405.html
"Enterprise Manager will need to consume the entire recordset
to have the locks released. You need to scroll to the last
record in Enterprise Manager to have the locks
released. You would have an IS lock on the table and a
shared lock on the specific page you are on until moving to
the end of the result set."
So...the SQL Server Enterprise Mangler will hold onto table locks when the result-set is longer than one "page" until you either 1) scroll to the bottom of the result-set, or 2) close the query window.
This bit me in the ass today when I ran "SELECT TOP 1000 * <TableName>" against a table that logs every web request. We immediately started logging SQL-Timeout errors which immediately stopped the moment I closed the result-set. I had to try it a few times just to convince myself it was truly happening. I felt like a two year-old learning that flames from lighters make ouches.
Why have we, the general M$ development public, not been warned of this before? This is yet one more tally in the column that the Enterprise Manager does not belong in an enterprise environment.
Query Analyzer does not seem to suffer from the same idiocy.