如何使用Java连接到Access数据库?
我这样做了:
package inspection.management.system;
import java.sql.*;
/**
*
* @author Fuhans
*/
public class Database
{
public static void DatabaseConnectivity()
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + "d:\\program files\\project\\program\\inspection management system\\db1.accdb";
Connection conn = DriverManager.getConnection(url);
System.out.println("Connection Successful");
InfoBox.ShowMessageBox("Connection Successful!", "Success");
}
catch (Exception e)
{
System.err.println("Got an exception!");
System.err.println(e.getMessage());
InfoBox.ShowMessageBox("Got an Exception!", "Error");
InfoBox.ShowMessageBox(e.getMessage(), "Error");
}
}
}
if (_textField1.equals("Fuhans") && _passwordField1.equals("Xavega"))
{
Sound.PlaySound(1);
InfoBox.ShowMessageBox("Successfully Login!", "Success");
Database.DatabaseConnectivity();
}
当我成功登录时,它给了我数据库错误:
我做错了什么?
答案 0 :(得分:1)
在ODBC管理器应用程序中,我没有Ms访问驱动程序,我只有SQL驱动程序。
现在已经从Java中删除了JDBC-ODBC Bridge(从Java 8开始),您应该考虑使用UCanAccess JDBC驱动程序。它是一个纯Java实现,因此它也适用于非Windows平台。
有关详细信息,请参阅
答案 1 :(得分:0)
您应首先创建DSN(数据源名称)。
在控制面板中,如果即使已安装也没有可供访问的驱动程序,则可能无法获取odbcad32.exe文件路径。 从中选择您的路径,然后右键单击数据源(ODBC)[创建DSN的位置],并在其中粘贴以下路径之一。
32位版本的Odbcad32.exe文件位于:
%WINDIR%\的Windows \ SYSWOW64
64位版本的Odbcad32.exe文件位于:
%WINDIR%\ Windows \ System32下
在访问时,请执行以下操作:
String url = "jdbc:odbc:dsn_name";
Connection conn = DriverManager.getConnection(url);
答案 2 :(得分:0)
更改声明:
String url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + "d:\\program files\\project\\program\\inspection management system\\db1.accdb";
为:
String url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + "C://program files//project//program//inspection management system//db1.accdb";