当前位置: 首页 > 知识库问答 >
问题:

即使在安装驱动程序[duplicate]之后也无法解决java.sql.sqlexception

贲培
2023-03-14

我是JDBC的初学者,我想连接到本地机器上的MySQL实例。下面是我试图连接到的MySQL实例。它存在于我的本地机器上。它有一个名为my_db2的数据库。我想和它的桌子一起工作。

为了连接到上面的数据库,我编写了以下代码。

import java.sql.*;

public class TestMySQL {
    public static void main(String[] args) {

        try(
            Connection connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3308/my_db2","root","B03091999b");
            Statement statement = connection.createStatement();
            ResultSet rs = statement.executeQuery("Select * from department");)
        {
            while(rs.next()){
                System.out.println(rs.getString("DeptName"));
            }

        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
    }
}

然而,当我尝试连接到数据库时,我总是得到这个错误。

java.sql.SQLException: No suitable driver found for jdbc:mysql://127.0.0.1:3308/my_db2
    at java.sql.DriverManager.getConnection(DriverManager.java:689)
    at java.sql.DriverManager.getConnection(DriverManager.java:247)
    at TestMySQL.main(TestMySQL.java:7)

import java.sql.*;

public class TestMySQL {
    public static void main(String[] args) {



        try
        {
            Class.forName("com.mysql.cj.jdbc.Driver");
            Connection connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3308/my_db2","root","B03091999b");
            Statement statement = connection.createStatement();
            ResultSet rs = statement.executeQuery("Select * from department");
            while(rs.next()){
                System.out.println(rs.getString("DeptName"));
            }

        } catch (SQLException | ClassNotFoundException throwables) {
            throwables.printStackTrace();
        }
    }
}

在这一点上,我开始得到以下错误。

java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)
    at TestMySQL.main(TestMySQL.java:10)

据我所知,我正确地执行了所有步骤,将mysql-connector文件添加到库中。我不确定哪里出了问题。请帮我解决这个问题。如有任何帮助,我们将不胜感激。

共有1个答案

林修真
2023-03-14

您应该先加载驱动程序

Class.forName("com.mysql.cj.jdbc.Driver");
 类似资料:
  • 问题内容: 我是Linux世界的新手,我想从Python查询Microsoft SQL Server。我在Windows上使用了它,这很好,但是在Linux上却很痛苦。 几个小时后,我终于成功地使用unixODBC在Linux Mint上安装了Microsoft ODBC驱动程序。 然后,我用python 3环境设置了一个anaconda。 然后,我这样做: 它返回: 我不明白的是,PyODBC似

  • 在过去的三天里,我收到了著名的错误消息“R无法解析为变量”,我完全被卡住了。我确实遵循了以下链接中的说明,但我无法消除这个错误:在Eclipse中为Android开发:R.java不重新生成 我已经写了很多新项目,只是有一个新标题,但都是一样的。 直到今天,我还是完全卸载了Eclipse、jdk、jre,并重新安装了几乎相同的软件… **配置:Windows 7 64位 eclipse-stand

  • 情景1: 试图推送文件大小 情景2: 克隆新回购协议 创建了一个新文件 那么“场景1”中有什么问题,如果git lfs在场景2中工作

  • 我进入IDLE并输入import-pygame到shell,它会给我一个错误。然后我进入一个新程序,输入import-pygame,我得到了同样的错误。我用pip安装了pygame,现在使用的是python 3,版本3.6.8。 我尝试重新安装pygame并尝试使用sudo进行安装。我也尝试使用pip3,相同的结果。

  • 即使在Eclipse中安装了javafx程序,我也不能运行javafx程序。我在运行javafx程序后遇到的错误

  • 本文向大家介绍centos6.5安装python3.7.1之后无法使用pip的解决方案,包括了centos6.5安装python3.7.1之后无法使用pip的解决方案的使用技巧和注意事项,需要的朋友参考一下 编译安装全是坑…… 第一遍装完无法使用pip,报错找不到ssl模块。各种报错: pip is configured with locations that require TLS/SSL, h