2

我使用 UCanAccess 创建了两个具有它们之间关系的表。但它不会建立关系。为什么?怎么了?我怎么解决这个问题?

statement.execute("CREATE TABLE example1 (ExId LONG PRIMARY KEY, Title TEXT) ");
statement.execute("CREATE TABLE example2 (Id COUNTER PRIMARY KEY," + 
                " ExId LONG REFERENCES example1(ExId), Description TEXT)");
4

1 回答 1

1

您的 DDL 语句没有什么不好,但 UCanAccess 在 DDL 支持方面有一些限制。它不能创建外键是这些限制之一。目前 UCanAccess 可以创建主键和索引(唯一或不唯一)。它显然可以读取和应用所有现有的外键约束。实际上,底层库 jackcess 可以读取外键约束,但它仍然不能创建它们。我希望将来能够增强对 DDL 的支持。

于 2014-08-28T14:51:45.067 回答