Saturday, June 02, 2007

用jdbc-odbc操作dbf文件

dbf分两种,一种是Dbase,另一种是Foxpro的

Dbase不用装驱动就可以操作

java 代码
  1. Connection connDbf = null;
  2. PreparedStatement psDbf = null;
  3. ResultSet rsDbf = null;
  4. //一个目录名称,下面存放DBF文件
  5. String filePath = "D:/temp";
  6. //一个DBF文件夹,实际文件名称为tbUser.dbf,这里做为表名不用扩展名就可以
  7. String fileName = "tbUser";
  8. Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  9. connDbf = DriverManager.getConnection("jdbc:odbc:DRIVER={Microsoft dBase Driver (*.dbf)};DBQ=" + filePath + ";","","");
  10. sql = "select * from " + fileName;
  11. psDbf = connDbf.prepareStatement(sql);
  12. rsDbf = psDbf.executeQuery();

另一种要装foxpro的驱动

java 代码
  1. Connection connDbf = null;
  2. PreparedStatement psDbf = null;
  3. ResultSet rsDbf = null;
  4. //一个目录名称,下面存放DBF文件
  5. String filePath = "D:/temp";
  6. //一个DBF文件夹,实际文件名称为tbUser.dbf,这里做为表名不用扩展名就可以
  7. String fileName = "tbUser";
  8. Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  9. String strurl = "jdbc:odbc:Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB=" + filePath + ";Exclusive=No;";
  10. connDbf = DriverManager.getConnection(strurl);
  11. sql = "select * from " + fileName;
  12. psDbf = connDbf.prepareStatement(sql);
  13. rsDbf = psDbf.executeQuery();