java - 连接sql数据库问题

标签 java

我正在尝试连接到本地主机上的 SQL 数据库。 使用以下代码:

try {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
    } catch(ClassNotFoundException e) {
        System.out.println("JdbcOdbcDriver wasn't found");
        e.printStackTrace();
    }


    Connection connection = null;
    try {
      connection = DriverManager.getConnection("jdbc:mysql://localhost/testBase", "root", "");

      Statement statement = connection.createStatement();
      ResultSet res = statement.executeQuery("");

    }
    catch(SQLException e){ System.out.println(e); }     
    finally {
        if(connection != null) {
            try { connection.close(); } catch (SQLException e) { e.printStackTrace(); }
        }
    }

我有 2 个与此代码相关的问题:

  1. 我正在使用 sun.jdbc.odbc.JdbcOdbcDriver 驱动程序,因为它似乎是我的系统上唯一可用的驱动程序,但是我读到它是一个 Windows 组件...有没有办法让它独立于平台(或者已经是)?
  2. 第二个 catch 输出

    java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost/

    这很烦人,我似乎找不到工作方式......

感谢您的帮助!

最佳答案

生成 jar 时,可以包含其所有依赖项。
因此,您可以使用所需的任何驱动程序,并在为应用程序生成 jar 时包含它。

现在您已经跨平台了。

关于问题#2,那是因为你的lib文件夹中没有mysqLconnector。
您可以在这里下载:http://dev.mysql.com/downloads/connector/j/

只要包含它,如果你使用的是IDE,你可以寻找一个选项“include jar/folder”并添加它,然后再试一次;如果您不在 IDE 中...您必须将其设置在 classpath 上。

关于java - 连接sql数据库问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21246473/

相关文章:

java - Business Objects 4.1 OpenDocument 使用企业登录进行编辑

JavaFX 的东西不会引用

java - 编写与 Hamcrest AllOf/CombinableMatcher 匹配器配合良好的自定义匹配器

java - 如何在 Java 代码中使用 scala.None

java - 检查数组中是否存在范围内的所有值的最佳方法是什么? ( java )

java - Spring MVC 在带点的 URL 上返回 HTTP 406

java - 如何将结果集的数据保存在多个文件中?

java - 放置我自己的 Java 代码(不是服务、 Activity 、 fragment 等)的正确位置在哪里?

java - 线程 "AWT-EventQueue-0"java.lang.NullPointerException if 语句中的异常

java - BigQuery 对存在的表返回 404 错误