我对 Java 很陌生(我是一个纯粹的 .net 人)。我正在尝试进行 SQL Server 2008 数据库连接。现在我正在使用“jTDS”驱动程序来完成我的工作。
db.dbConnect("jdbc:jtds:sqlserver://XXXXXXX\XXXXXXXX/MyDB","用户名","密码");
我在连接中做错了什么?我收到以下错误
我知道这可能是一个很容易解决的问题。提前致谢
我对 Java 很陌生(我是一个纯粹的 .net 人)。我正在尝试进行 SQL Server 2008 数据库连接。现在我正在使用“jTDS”驱动程序来完成我的工作。
db.dbConnect("jdbc:jtds:sqlserver://XXXXXXX\XXXXXXXX/MyDB","用户名","密码");
我在连接中做错了什么?我收到以下错误
我知道这可能是一个很容易解决的问题。提前致谢
您将Microsoft SQL Server JDBC 驱动程序URL 格式与jTDS 驱动程序混淆了。
jTDS 的格式为:
jdbc:jtds:<server_type>://<server>[:<port>][/<database>][;<property>=<value>[;...]]
在您的具体示例中,数据库的正确 URL 将是:
jdbc:jtds:sqlserver://IIS08TOPSDEVDB1/SmbCommission;instance=IIS08TOPSDEVDB1
现在,当您使用实例名称进行连接时,您需要确保 SQL Server Browser 服务正在运行,并且该实例已配置为接受 TCP/IP 连接。如果您不(想要)使用 SQL Server Browser 服务,请确保在固定端口上配置实例并指定该端口而不是实例:
jdbc:jtds:sqlserver://IIS08TOPSDEVDB1:<the-port>/SmbCommission
另一种选择是使用 Microsoft SQL Server JDBC 驱动程序,其格式如下:
jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]
使用这种格式,正确的 URL 应该是:
jdbc:sqlserver://IIS08TOPSDEVDB1\IIS08TOPSDEVDB1;databaseName=SmbCommission