With SQL Server 2005 and 2008 is it possible to set the default schema from the connection string? It'd be a lot easier if we didn't have to manually set the schema with SQL code.
4 Answers
You set the default schema based on the user who is logging in via the connection, not the connection itself.
ALTER USER Mary51 WITH DEFAULT_SCHEMA = Purchasing;
Reference:

- 325,700
- 82
- 523
- 502
-
1That would really suck for us though :/ – Earlz Jul 19 '10 at 15:53
-
LMAO..I posted exactly the same thing :-) – SQLMenace Jul 19 '10 at 15:53
-
4You mean you both came up with mary5 as a random name? Noway! – disklosr Jun 27 '18 at 19:29
-
A very good idea. But is it possible to do this in AWS Redshift? – saadi Feb 17 '20 at 11:33
No, this is done at the database User level, not in the connection string.
For reference, here are all of the properties which can be set in a connection string: https://www.connectionstrings.com/all-sql-server-connection-string-keywords/
change the default schema associated with that login
example
ALTER USER Mary51 WITH DEFAULT_SCHEMA = Purchasing;
More detail here: http://msdn.microsoft.com/en-us/library/ms176060.aspx

- 132,095
- 25
- 206
- 225
If when you say "Schema," you mean "Owner" (i.e. dbo), then I believe the selected answer is correct.
However, if you mean "Database" instead, which in some vendor's lingo means the same thing as "Schema," then I have provided some more info below.
In the link that TimS provided:
Scroll down to the row with these two properties:
Initial Catalog -or- Database
Here's an example connection string with a DEFAULT DATABASE:
Server=myServerName\myInstanceName,1433;Database=DEFAULT_DATABASE;User Id=myUsername;Password=myPassword;
See link below for more examples:

- 18,046
- 16
- 98
- 110