0

我正在为基于 Swing 的零售 ERP(销售点和会计)应用程序使用 H2 数据库。

我们的应用程序中有两个数据库,即 MainDB 和 CompanyDB。

主数据库存储所有用户信息和公司信息。每当用户创建公司时,这些数据将存储在 MainDB 的 company_table 中,随后将为每个公司创建 CompanyDB。

我们在 MainDB 和 CompanyDB 中有相同的主表(大约 60 个)。每当在应用程序中创建或编辑任何主数据库时,我都会插入和更新这两个数据库。

最近我开始了解 Linked Table,它在很多场合对我都非常有用。

我的问题是,如果我为 CompanyDB 中的所有主服务器创建链接表

  1. 我可以只为 CompanyDB 中的所有主人提供链接表吗?

  2. 我无法为所有事务和其他表引用外键,因为主表是链接表。没有外键关系是否可以接受?

  3. 创建大约 60 个链接表,会降低性能吗?

目前,我对表现非常满意。

请提供建议并对此有所了解。

谢谢并恭祝安康。

4

1 回答 1

1
  1. 我可以只为 CompanyDB 中的所有主人提供链接表吗?是的,这是可能的,甚至认为不是很常见。这实际上取决于用例。

  2. 没有外键关系是否可以接受?如果您在 MainDB 中的两个表之间定义外键关系,那么即使您在 CompanyDB 中进行更新,仍然会检查这一点。您不能跨数据库建立外键关系,但这是否可行取决于用例。例如,在 NoSQL 数据库中,您通常没有任何外键关系。

  3. 创建大约 60 个链接表,会降低性能吗?链接表的数量不是问题。但请注意,每个链接表单独比常规表慢。这是否可以接受取决于用例。

于 2013-03-28T05:56:48.110 回答