最近项目需要在redhat el4下通过java读取access数据,由于业务原因,只能用access数据库.在网上找了一些方法,但都失败.
请问有没有做过这方面的高手给个解决办法,或有成功的安装过程也可 已安装过unixodbc,mdbtools,mdbtools-odbc我的代码一直执行失败,是否代码有问题:*************************************
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;public class RAccess{ public static void main(String[] args){
try{
Driver driver = (Driver) Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
DriverManager.registerDriver(driver);
Connection connection = DriverManager.getConnection(args[0]);
Statement statement = connection.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);
ResultSet set = statement.executeQuery("SELECT * FROM RECORD");
while(set.next()){
System.out.println(set.getObject(1));
}
set.close();
statement.close();
connection.close();
}catch(Exception e){
e.printStackTrace();
}
}
}*************************************
java.lang.NullPointerException
at sun.jdbc.odbc.JdbcOdbcDriver.initialize(JdbcOdbcDriver.java:436)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:153)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:207)
at RAccess.main(RAccess.java:14)
请问有没有做过这方面的高手给个解决办法,或有成功的安装过程也可 已安装过unixodbc,mdbtools,mdbtools-odbc我的代码一直执行失败,是否代码有问题:*************************************
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;public class RAccess{ public static void main(String[] args){
try{
Driver driver = (Driver) Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
DriverManager.registerDriver(driver);
Connection connection = DriverManager.getConnection(args[0]);
Statement statement = connection.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);
ResultSet set = statement.executeQuery("SELECT * FROM RECORD");
while(set.next()){
System.out.println(set.getObject(1));
}
set.close();
statement.close();
connection.close();
}catch(Exception e){
e.printStackTrace();
}
}
}*************************************
java.lang.NullPointerException
at sun.jdbc.odbc.JdbcOdbcDriver.initialize(JdbcOdbcDriver.java:436)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:153)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:207)
at RAccess.main(RAccess.java:14)
bd不过,个人感觉这东西和运行平台没什么关系吧
本身java是跨平台的就不说了,
access的库也就是一个mdb文件而已。
(应该也不需要os的支持吧)
只要找到相应的jdbc驱动就行了。关键就是找到access的jdbc驱动。google一下吧good luck
你用的"sun.jdbc.odbc.JdbcOdbcDriver"
是通过window的odbc连接access的,(好像叫jdbc-odbc桥什么的)
linux系统应该没有这个odbc的东西吧。接着顶good luck