在Debian Linux机器上用Java连接MS Access
目前,我已经开发了一个小型桌面应用程序,作为对我的项目的增强,它读取“.mdb”文件,并使用“JDBC-ODBC驱动程序”作为MS Access数据库连接 这在Windows环境下运行良好,但我无法在Debian Linux机器上运行同样的操作 代码如下:在Debian Linux机器上用Java连接MS Access,java,linux,ms-access,jdbc,debian,Java,Linux,Ms Access,Jdbc,Debian,目前,我已经开发了一个小型桌面应用程序,作为对我的项目的增强,它读取“.mdb”文件,并使用“JDBC-ODBC驱动程序”作为MS Access数据库连接 这在Windows环境下运行良好,但我无法在Debian Linux机器上运行同样的操作 代码如下: try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); oAccessConnection = DriverManager.getConnection("jdbc:odbc:
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
oAccessConnection = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+mdbFileName);
}
catch (Exception oException)
{
logger.info("Exception",oException);
}
如何诊断该问题?除非您能找到MS Access for Linux,否则我认为这不会起作用。MS Access需要在受支持的操作系统上运行 您可以在单独的Windows设备上运行MS Access并进行远程访问,也可以在同一设备上的虚拟机中安装Windows,例如:
或者您可以使用可在其他操作系统上使用的数据库。(这几乎是任何接受MS Access和MS Sql Server的数据库)除非您能找到适用于Linux的MS Access,否则我认为这是行不通的。MS Access需要在受支持的操作系统上运行 您可以在单独的Windows设备上运行MS Access并进行远程访问,也可以在同一设备上的虚拟机中安装Windows,例如:
或者您可以使用可在其他操作系统上使用的数据库。(这几乎是任何接受MS Access和MS Sql Server的数据库)JDBC-ODBC桥在Linux机器上不起作用,因此您必须使用其他JDBC驱动程序,这些驱动程序可以直接访问MS-Access(而不是通过ODBC桥)-尝试查看JDBC-ODBC桥在Linux机器上不起作用,因此您必须使用其他JDBC驱动程序,它可以直接访问MS-access(而不是通过ODBC桥)-如果您只需要操作文件数据而不需要运行复杂的查询,请尝试查看,然后您可以使用它来处理access文件(它可以在没有额外库的任何平台上工作)。唯一的缺点是它不支持jdbc,也没有执行sql查询的方法。如果您只需要操作文件数据而不需要运行复杂的查询,那么您可以使用access文件(它可以在没有额外库的任何平台上工作)。唯一的缺点是它不支持jdbc,也没有执行sql查询的方法。你能为同样的方法提出建议吗?@HarsH补充了一些建议。“微软坚持在他们的Windows操作系统上运行access。你能提出同样的建议吗?”HarsH补充道。微软坚持在他们的Windows操作系统上运行access。