[驱动] linux下连接access数据库问题
Fire花生
2015-09-01
Linux现在是否有连接access的驱动,网上下载的jdbc,都是有限制的,最多只能查一千条数据而且有访问次数限制,只能访问50次。请问是否还有别的办法,在Linux连接access数据库。
|
|
simen_net
2015-09-02
http://jackcess.sourceforge.net/
跨平台,我已经用到实际项目 |
|
ahack
2015-09-03
Access_JDBC30是跨平台连接access最适合的jar但收费非常的贵,Access_JDBC30的免费版有查询50次、数据小于1000的限制。UCanAccess也提供了数据连接功能,可以比较方便的读写access数据库。UCanAccess自身依赖几个jar包,比如核心的:jackcess-2.0.6.jar ,Jackcess 是一个Java 类库,用来读写微软的Access 数据库。如果设置了hsqldb,那么将会在内存中加载. 默认=true.
快速入门:http://ucanaccess.sourceforge.net/site.html 依赖包: commons-lang-2.6.jar commons-logging-1.1.1.jar hsqldb.jar jackcess-2.0.6.jar ucanaccess-2.0.9.2.jar 下载地址:http://pan.baidu.com/s/1dDgXV4d 连接方式如下: import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author yz */ public class TestAccessMDB { public static void main(String[] args) { try { Class.forName("net.ucanaccess.jdbc.UcanaccessDriver"); String pwd = new String(new byte[]{(byte) 0xc3,(byte) 0xdc,0x0d,0x09,0x0a,(byte) 0xc2,(byte) 0xeb,0x02},"GBK"); Connection conn = DriverManager.getConnection("jdbc:ucanaccess:///Users/yz/db.mdb","",pwd); Statement s = conn.createStatement(); ResultSet rs = s.executeQuery("SELECT * FROM site"); while (rs.next()) { System.out.println(rs.getObject(6)); } } catch (Exception ex) { Logger.getLogger(TestAccessMDB.class.getName()).log(Level.SEVERE, null, ex); } } } |