web-dev-qa-db-ja.com

インスタンス名とドメインを含むJDBC接続文字列

次の構成でSQL Serverにデータベースを作成しています。

また、EDSという名前のデータベースに接続しようとしています。

そのために、次の詳細を作成しました。

文字列にドメインを含める必要がありますか、それともユーザー名に含める必要がありますか?データベースのプロパティに移動すると、所有者が表示されます。また、画像に応じてインスタンス部分のURLは正しいですか?その特定のインスタンスに移動できないようです。

また、これは接続の構成です(Windows認証を使用)

ユーザー名を入力すると、次のエラーログが表示されます。

com.Microsoft.sqlserver.jdbc.SQLServerException:ユーザー 'のログインに失敗しました。 ClientConnectionId:e812971f-b03c-4210-9dbd-de0791bcc304

SQL Serverインスタンスの場所を指定するとき、通常は、両方ではなく、serverName\instanceNameorserverName:portNumberを提供します。つまり、どちらか

jdbc:sqlserver://INNOWAVE-99\SQLEXPRESS01;databaseName=EDS

または

jdbc:sqlserver://localhost:1433;databaseName=EDS

(SQLEXPRESS01インスタンスがポート1433でリッスンするように明示的に構成されていると仮定します。これは通常、SQL Expressインスタンスには当てはまりません)。

接続URLの構築 のドキュメントに記載されているとおり

PortNumberとinstanceNameの両方が使用される場合、portNumberが優先され、instanceNameは無視されます。

SQL Server用のMicrosoftのJDBCドライバーの接続URLにdomain=プロパティが定義されていません。 Windowsドメイン資格情報を使用したSQL Serverインスタンスへのログインは、integratedSecurity=true接続プロパティを使用して暗黙的に行われます(およびnotユーザー名とパスワードを明示的に提供します)。詳細 ここ

16
Gord Thompson