java连接sql数据库失败,怎么做

代码
import java.sql.*;
public class Conn { // 创建类Conn
Connection con; // 声明Connection对象

public Connection getConnection() {// 建立返回值为Connection的方法
try {// 加载数据库驱动类
Class.forName("net.sourceforge.jtds.jdbc.Driver");
System.out.println("数据库驱动加载成功");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {// 通过访问数据库的URL获取数据库连接对象
con = DriverManager.getConnection("jdbc:jtds:sqlserver://127.0.0.1:1433/MSSQLSERVER", "sa", "123456");
System.out.println("数据库连接成功");
} catch (SQLException e) {
e.printStackTrace();
}
return con; // 按方法要求返回一个Connection对象
}

public static void main(String[] args) { // 主方法
Conn c = new Conn(); // 创建本类对象
c.getConnection(); // 调用连接数据库方法
}
}

报错
数据库驱动加载成功
java.sql.SQLException: 用户 'sa' 登录失败。
at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:368)
at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2816)
at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2254)
at net.sourceforge.jtds.jdbc.TdsCore.login(TdsCore.java:602)
at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:344)
at net.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(ConnectionJDBC3.java:50)
at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:182)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Conn.getConnection(Conn.java:14)
at Conn.main(Conn.java:25)

现在很少用sqlserver了,因为java是跨平台的,sqlserver不跨平台,提示失败一般就是你没有开远程连接、密码错误、数据库服务有问题,一般你用工具能脸上的话,这个就能连上
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-04-02
你这问题很明显啊,账号密码错误了呗。
第2个回答  2018-03-30
这还说的不清楚吗,sa的密码错了,不是123456.
第3个回答  2015-01-11
前面的System.out.println("数据库驱动加载成功"); 正确输出了 所以驱动是加载成功的。不必考虑jar包的情况,后面的System.out.println("数据库连接成功");
没有执行。说明con = DriverManager.getConnection("jdbc:jtds:sqlserver://127.0.0.1:1433/MSSQLSERVER", "sa", "123456");
这句代码执行时出现异常, 1、你可以看看url是否正确,2、用户名密码是否正确。。 它已经提示了用户sa登录失败。如果前面两项都没有问题,你可以看看是否具有数据库系统是否有远程访问的权限!(你可以先使用一个客户端尝试一下看看)这里百度了一篇设置远程登录访问权限的!http://www.cnblogs.com/shaocm/archive/2012/07/13/2590308.html本回答被网友采纳
第4个回答  2015-01-11
你的URL和用户名密码都对吗,检查下URL写的对不对追问

我是新手 url等都对啊,我怎么去验证我这个url可以用啊 比如浏览器

追答sqlserver2008中是这么写的
String url = "jdbc:jtds:sqlserver://127.0.0.1:1433/wh123";
Class.forName("net.sourceforge.jtds.jdbc.Driver");
你打开你本地的sqlserver客户端用你的这个用户名和密码看看能不能登录?
用sa/123456登录你的sqlserver客户端,看看有没有数据库名是MSSQLSERVER的

我的mysql是这么写的

相似回答