|  | Posted by Erland Sommarskog on 09/19/07 21:10 
Hugo Kornelis (hugo@perFact.REMOVETHIS.info.INVALID) writes:> For SELECT *, the first step in parsing is to find out which columns are
 > in the table. That requires a read on the syscolumns system table in SQL
 > Server 2000, or it's undocumented equivalent in SQL Server 2005. That in
 > itself means that you'll have a small bit of overhead, due to requesting
 > a lock, getting it, reading the data, and releasing the lock again.
 
 But if you list all columns in the table, the optimizer still has to
 read all rows in sys.columns for the table verify that all columns
 exists, to find their data types etc. So the amount of locking would be
 the same.
 
 
 --
 Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se
 
 Books Online for SQL Server 2005 at
 http://www.microsoft.com/technet/prodtechnol/sql/2005/downloads/books.mspx
 Books Online for SQL Server 2000 at
 http://www.microsoft.com/sql/prodinfo/previousversions/books.mspx
 [Back to original message] |