If you use [server_name] [instance name], (local) [instance name] or LOCALHOST [instance name] from the local computer, it will use shared memory while shared memory is turned on (directing it to the User Interface is different in 2005 and 2008 so I donβt know which version should I help you with). Unlike SQLCMD, etc., there is no way to tell the provider that you want to use shared memory , if for some reason it cannot use shared memory, it will use a different protocol by default (named pipes or TCP / IP) . You can check which protocols are used by looking at sys.dm_exec_connections:
SELECT session_id, net_transport FROM sys.dm_exec_connections;
I did not test this with the SQL browser turned off, but I think this should not have any effect. FWIW, I always use TCP / IP, but I almost always avoid having applications on the local machine that need to connect to SQL Server - this is what lower-spectrum application servers use instead of taking memory and processor on the base server data (and therefore from SQL Server).
source share