这是我的连接字符串:
public static void connectToDatabase() {
String url = "jdbc:sqlserver://192.168.0.95\\instance;databaseName=sampleDB";
String username = "sa";
String password = "pass";
try {
Connection conn = DriverManager.getConnection(url,username,password);
System.out.println("Connected to sql server");
}
我从未使用过 MS SQL,但我需要连接,这是我得到的错误:
avg 12, 2020 2:45:47 PM com.microsoft.sqlserver.jdbc.TDSChannel enableSSL
WARNING: TLSv1 was negotiated. Please update server and client to use TLSv1.2 at minimum.
com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'sa'.
ClientConnectionId:33111bca-b8c7-4be3-9673-b012c5949817
我正在使用 windows 7 专业版(不要问)。我该如何解决这个问题?
在 Maven 项目中,您可以像这样更改 pom.xml 中的版本;
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>8.2.1.jre11</version>
</dependency>
我遇到这个问题是因为我的服务器密码已过期
警告消息“警告:已协商 TLSv1。请更新服务器和客户端以至少使用 TLSv1.2。”与连接异常无关。
即使有警告,连接也会建立。 连接问题似乎与连接参数有关。
代替
String url = "jdbc:sqlserver://192.168.0.95\\instance;databaseName=sampleDB";
使用
String url = "jdbc:sqlserver://192.168.0.95;databaseName=sampleDB";
同时传递正确的用户名和密码。