具有实例名称和域的JDBC连接字符串

Joa*_*ins 6 sql-server jdbc

我有一个在SQL Server中创建的数据库,具有以下配置:

另外,我正在尝试连接到名为的数据库EDS.

为此,我创建了以下详细信息:

我应该在字符串中有域名还是应该在用户名中?当我转到数据库属性时,我看到所有者有.另外,根据图像,实例部分的URL是否正确?看起来它无法进入该特定实例.

此外,这是连接的配置(使用Windows Authenticaton)

当我输入用户名时,我收到以下错误日志:

com.microsoft.sqlserver.jdbc.SQLServerException:用户'登录失败.ClientConnectionId:e812971f-B03C-4210-9dbd-de0791bcc304

Gor*_*son 16

指定SQL Server实例的位置时,通常提供serverName\instanceName serverName:portNumber不提供两者.也就是说

jdbc:sqlserver://INNOWAVE-99\SQLEXPRESS01;databaseName=EDS
Run Code Online (Sandbox Code Playgroud)

要么

jdbc:sqlserver://localhost:1433;databaseName=EDS
Run Code Online (Sandbox Code Playgroud)

(假设已明确配置SQLEXPRESS01实例以侦听端口1433,这通常不是SQL Express实例的情况).

构建连接URL的文档中所述

如果同时使用portNumber和instanceName,则portNumber将优先,并且将忽略instanceName.

没有domain=为Microsoft的SQL Server JDBC驱动程序的连接URL定义属性.使用Windows域凭据登录到SQL Server实例是使用integratedSecurity=true连接属性隐式完成的(并且没有明确提供用户名和密码); 详情点击这里.

  • 谢谢,删除端口号让它对我有用(在 Spotfire 中)。 (2认同)
  • 如果您在 springboot application.properties 中,请不要忘记 jdbc:sqlserver://192.169.52.105\\SQLEXPRESS;databaseName=icamdbstore 双斜杠 (2认同)