java连接mysql数据库没有反应怎么办

用java连接数据库出现No suitable driver found for root这个错误,求大神帮助

10个回答

看起来应该是驱动问题
数据库源一般是4个内容
driver(驱动):com.mysql.jdbc.Driber(这是mysql的)
url(地址):jdbc:mysql://localhost:3306/test(这里的test是你的数据库名称,后面可以加编码类型)
username(用户名):root---用户名和密码都是你安装数据库的时候填的
password(密码):root

你用java连接错误的话可能就是class.forName()里面写错了

Tracy19971
Tracy19971 代码基本照书上写的,也就是你这个格式,数据库启动了,jar包也导入了,还是不行
3 年多之前 回复

看你的出错原因应该是数据库驱动有问题

Tracy19971
Tracy19971 驱动用的官网下的驱动然后导包了呀,也不知道怎么回事.....
3 年多之前 回复

driver 出错,看看有没有写错包名或者没导入包

daichangxia
dcx· 回复Tracy19971: build path了吗
3 年多之前 回复
Tracy19971
Tracy19971 确实是导包了的,官网下的
3 年多之前 回复

添加jar包mysql-connector-java.jar

Tracy19971
Tracy19971 回复爱上编程的小白: 下面上图了,帮忙看一下
3 年多之前 回复
w13485673086
爱上编程的小白 回复Tracy19971: 可以把你的代码贴出来
3 年多之前 回复
Tracy19971
Tracy19971 加了的
3 年多之前 回复

新人第一次发帖,这个回复是评论吗

一段测试代码,注意一下开头的import,之前遇到过的坑,eclipse自动导错的一个import导致报错

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        try{
            Class.forName("com.mysql.jdbc.Driver");
            String url = "jdbc:mysql://localhost:3306/db_duobi";
            String username = "root";
            String password = "void123456";
            Connection conn = DriverManager.getConnection(url,username,password);

            if(conn != null){
                System.out.println("数据库连接成功");
                conn.close();
            }else {
                System.out.println("数据库连接失败");
            }
        }catch (ClassNotFoundException e){
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

}

应该是缺少jar包了,把jar包放到lib下或者配置到pon文件中就可以了。

一般来说你的driver没有写错的话,或者是lib下没有导入jar包,还有就是你的数据库的驱动版本有问题的,三个步骤检查一下就可以了。

Tracy19971
Tracy19971 我在官网下的驱动,5.1.40版本的
3 年多之前 回复
Tracy19971
Tracy19971 驱动版本要和数据库版本一致吗
3 年多之前 回复

最简单的MySQL jdbc操作
package demo1;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DbMysql {
public static void main(String[] args) {
try {
// 1、驱动
Class.forName("com.mysql.jdbc.Driver");
// 2、连接数据库
Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/mybatis", "root", "root");
// 3、创建预编译对象
PreparedStatement ps = connection
.prepareStatement("select * from user");
// 4、获取结果集
ResultSet rs = ps.executeQuery();
while (rs.next()) {
User user = new User(rs.getInt(1), rs.getString(2),
rs.getString(3));
System.out.println(user);
}

    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

}

图片说明
图片说明

Tracy19971
Tracy19971 下面上图了,帮忙看一下
3 年多之前 回复

错误应该就是驱动有问题,但是导入包了的
图片说明

Tracy19971
Tracy19971 回复请你吃代码去不去: 对比你的代码终于解决了,我把url放在前面就对了。。。。
3 年多之前 回复
Tracy19971
Tracy19971 回复丨LYF丨: workbench可以用,我看我的电脑管理服务里数据库都是开启了的
3 年多之前 回复
liyufei20082008
丨LYF丨 有没有用mysqlworkbench,navicat 之类的工具或者在命令行里连接一下数据库,先确保数据库是可以连上的
3 年多之前 回复
Tracy19971
Tracy19971 回复饿的吃代码: 不知道是不是我的数据库安装有问题。。。
3 年多之前 回复
Tracy19971
Tracy19971 回复饿的吃代码: 用户名root,密码1111没错呀
3 年多之前 回复
sinat_36465520
请你吃代码去不去 是不是用户名或者密码错了。。。
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐