Java access数据库连接

Java access数据库连接,java,database,ms-access,Java,Database,Ms Access,我想学习如何用java连接DB。我为此编写了以下代码: package login; import java.sql.*; public class DBTest { public static void main(String[] args) { try { Class.forName("sun.odbc.jdbc.JdbcOdbcDriver"); Connection c = DriverManager.g

我想学习如何用java连接DB。我为此编写了以下代码:

package login;

import java.sql.*;

public class DBTest {

    public static void main(String[] args) {

        try {

            Class.forName("sun.odbc.jdbc.JdbcOdbcDriver");

            Connection c = DriverManager.getConnection("jdbc:odbc:Test");

            Statement s = c.createStatement();

            String sql = "select * from Table1";

            ResultSet result = s.executeQuery(sql);

            while (result.next()) {
                System.out.println("\n" + result.getString(1) + "\t" + result.getString(2));
            }
        } catch (Exception e) {
            System.out.println("exception generated:" + e.getMessage());
        }

    }
}
但我有一个例外:

运行:

生成异常:sun.odbc.jdbc.JdbcOdbcDriver生成成功 (总时间:0秒)


我创建了一个名为exp.accdb的数据库。如何解决此问题?

您不需要输入数据库凭据,即主机名、用户名和密码吗? 例如:
c=DriverManager.getConnection(主机、用户名、密码)

您也可以通过执行以下操作来检查它是否在调试期间已连接:

if (c != null) {
   System.out.println("Connection established");
}

放置一个
e.printStackTrace()请在catch块内查看输出。您使用什么数据库?MSSQL?,甲骨文?MySql?您的Java版本是什么?您能分享一点例外日志吗?如果您使用JDK8,JDBC-ODBC网桥驱动程序不可用。它被移除了。更好的办法是使用JDK中绑定的Derby数据库及其驱动程序类。帮自己一个忙——阅读JDBC教程,了解PreparedStatement。您的示例代码不是一个好方法。但是,我使用MS Access DB。所以你能告诉我什么是主机名,用户名和密码吗。我从未在Access数据库中设置用户名和密码