web-dev-qa-db-ja.com

接続文字列からデフォルトのスキーマを設定できますか?

SQL Server 2005および2008では、接続文字列からデフォルトのスキーマを設定できますか? SQLコードを使用してスキーマを手動で設定する必要がなければ、はるかに簡単になります。

36
Earlz

いいえ、これは接続文字列ではなく、データベースユーザーレベルで行われます。

参考までに、接続文字列に設定できるすべてのプロパティを次に示します。 https://www.connectionstrings.com/all-sql-server-connection-string-keywords/

31
TimS

接続自体ではなく、接続を介してログインしているユーザーに基づいてデフォルトのスキーマを設定します。

ALTER USER Mary51 WITH DEFAULT_SCHEMA = Purchasing;

参照:

32
OMG Ponies

そのログインに関連付けられているデフォルトのスキーマを変更する

ALTER USER Mary51 WITH DEFAULT_SCHEMA = Purchasing;

詳細はこちら: http://msdn.Microsoft.com/en-us/library/ms176060.aspx

11
SQLMenace

「スキーマ」と言う場合、「所有者」(つまりdbo)を意味する場合、選択した答えは正しいと思います。

ただし、代わりに「データベース」を意味する場合、ベンダーの専門用語では「スキーマ」と同じことを意味する場合、以下の詳細情報を提供します。

TimSが提供したリンクで:

次の2つのプロパティがある行までスクロールします。

初期カタログ-または-データベース

次に、DEFAULT DATABASEを使用した接続文字列の例を示します。

Server=myServerName\myInstanceName,1433;Database=DEFAULT_DATABASE;User Id=myUsername;Password=myPassword;

その他の例については、以下のリンクを参照してください。

3
JohnB