- package access;
- import java.io.File;
- import java.io.IOException;
- import java.sql.SQLException;
- import java.sql.Types;
- import org.junit.Test;
- import com.healthmarketscience.jackcess.ColumnBuilder;
- import com.healthmarketscience.jackcess.Database;
- import com.healthmarketscience.jackcess.DatabaseBuilder;
- import com.healthmarketscience.jackcess.Table;
- import com.healthmarketscience.jackcess.TableBuilder;
- public class AccessUtil {
- public static void main(String[] args) throws IOException {
- // 这里同样支持 mdb 和 accdb
- Database db = DatabaseBuilder.create(Database.FileFormat.V2000, new File("d:\\new.mdb"));
- Table newTable;
- try {
- // 刚才是创建文件, 这里是在文件里创建表, 字段名, 字段类型
- newTable = new TableBuilder("Archives")
- .addColumn(new ColumnBuilder("档案号")
- .setSQLType(Types.VARCHAR))
- .addColumn(new ColumnBuilder("编制单位")
- .setSQLType(Types.VARCHAR))
- .addColumn(new ColumnBuilder("案卷正题名")
- .setSQLType(Types.VARCHAR))
- .addColumn(new ColumnBuilder("案卷题目长度")
- .setSQLType(Types.INTEGER))
- .addColumn(new ColumnBuilder("档案盒规格")
- .setSQLType(Types.VARCHAR))
- .addColumn(new ColumnBuilder("编制单位长度")
- .setSQLType(Types.INTEGER))
- .toTable(db);
- // 插入一条数据测试
- newTable.addRow("12", "foo","212",44,"323",56);
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- @Test
- public void operator() throws Exception {
- File mdbFile = new File("C:\\Users\\admin\\Desktop\\test.mdb");
- if (mdbFile.exists()) {
- Database dbin = DatabaseBuilder.open(mdbFile);
- Table table = dbin.getTable("Archives");
- table.addRow("档案号 新增测试", "编制单位新增测试", "案卷正题目新增测试",55, "档案盒规格测试", 5);
- }
- }
- }
以下是生成的 access 文件打开后的效果, 需用 Office 的 access 软件打开
jackcess-2.1.10.jar
来源: http://www.bubuko.com/infodetail-2864950.html