最近做个项目,要用到access数据库导入,可是界面上要获取到所有的表名,进行选择导入,网上都是要设置数据库的账户权限,可是我们的客户要每月导入一次,也就是说每月都要换数据库,这就需要另辟路径了。
废话不多说,直接上代码:
package com.test;
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.*;
public class CallDll {
public static void main(String args[]) {
ActiveXComponent app = new ActiveXComponent("getAccessTableName.Class1");
Dispatch mycom = (Dispatch) app.getObject();
if (mycom != null) {
Variant result = Dispatch.callN(mycom, "getName",
new String[] { "d:\\tu.mdb" });
System.out.print(result);
}
}
}
详见附件:
注意:getAccessTableName.dll 需要注册
运行命令:regsvr32 C:\windows\system32\getAccessTableName.dll 显示成功导入。