Jackcess中的.createLinkedTable()
方法似乎目前只能创建指向另一个 Access 数据库中的表的链接。我刚刚使用 Jackcess 2.0.1 对此进行了测试,以下代码成功创建了一个名为 [Clients] 的 Access 链接表,该表指向另一个 Access 数据库:
Database database = DatabaseBuilder.open(new File("C:\\__tmp\\jTest\\linkTest.accdb"));
String linkedTableLocalName = "Clients";
String linkedTableSource = "C:\\Users\\Public\\Database1.accdb";
String linkedTableRemoteName = "Clients";
database.createLinkedTable(linkedTableLocalName, linkedTableSource, linkedTableRemoteName);
但是,此代码创建了一个名为 [dbo_Addresses] 的链接表,该表看起来像是指向另一个 Access 数据库的链接(而不是预期的 ODBC 链接表)并且不起作用:
Database database = DatabaseBuilder.open(new File("C:\\__tmp\\jTest\\linkTest.accdb"));
String linkedTableLocalName = "dbo_Addresses";
String linkedTableSource = "ODBC;DSN=myDb;Trusted_Connection=Yes;APP=Microsoft Office 2010;DATABASE=myDb;";
String linkedTableRemoteName = "dbo.Addresses";
database.createLinkedTable(linkedTableLocalName, linkedTableSource, linkedTableRemoteName);