Java连接数据库,成功加载SQL驱动程序,但数据库连接失败

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

public class T2
{
public static void main(String[] args)
{
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
System.out.println("成功加载SQL驱动程序");
} catch (Exception e)
{
System.out.println("找不到SQL驱动程序");
}
try
{
Connection con = DriverManager.getConnection("jdbc:sqlserver://localhost:1433:DatabanseName=SQltest", "sa", "xcvbnm");
Statement stmt = con.createStatement();
System.out.println("数据库连接成功");
} catch (Exception e)
{
e.printStackTrace();
System.out.println("数据库连接失败");
}
}
}

结果:
成功加载SQL驱动程序
com.microsoft.sqlserver.jdbc.SQLServerException: 端口号 1433:DatabanseName=SQltest 无效。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:691)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at test.T2.main(T2.java:21)
数据库连接失败

5个回答

DatabanseName写错了,应该是**DatabaseName**

qq_18848743
qq_18848743 对对对,谢谢大哥
大约 5 年之前 回复

数据库连接失败,检查sql server是否开启tcp/ip服务,是否允许远程连接,是否允许防火墙,用户名、密码、数据库名是否正确。

DatabanseName前应该是分号,而不是冒号吧。。。。

Connection con = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabanseName=SQltest", "sa", "xcvbnm");

qq_18848743
qq_18848743 我去,谢谢大哥了,我被自己蠢哭了
大约 5 年之前 回复

com.microsoft.sqlserver.jdbc.SQLServerException: 端口号 1433:DatabanseName=SQltest 无效。 写得很清楚,数据库连接url 有问题

com.microsoft.sqlserver.jdbc.SQLServerException: 端口号 1433:DatabanseName=SQltest 无效。

11433.端口是否被占用? 换一个?
2.DatabaseName? 不是DatabanseName
3.看看 数据库中是否有名为 SQltest 的数据库

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问