多应用程序一数据库

时间:2011-12-12 21:02:14

标签: database

我正致力于涉及多个应用程序的数据库设计。

例如:

  1. 大学的系统信息(学生,年级,科目,专业等)
  2. 图书馆的系统信息(会员,书籍,类别等)
  3. 大学的学生和图书馆的成员都有相同的数据。

    因此,为了获得同步数据,我将两个应用程序的数据库设计到一个数据库中,这意味着两个应用程序中的表混合在一起。

    对此有更好的解决方案吗?

1 个答案:

答案 0 :(得分:1)

大多数现代SQL dbms都支持模式。模式本质上是一个可以用于任何目的的容器。一个明显的目的是作为表,视图,存储过程等的容器,在功能上密切相关。

PostgreSQL's CREATE SCHEMA syntax

所以你可以为这些事情创建单独的模式。

  • 文库
  • 施用
  • 课外活动
  • 健康与健康
  • 运动

由于每个模式都是数据库对象,因此通常可以在模式级别获得GRANT和REVOKE权限。这样可以更轻松地管理其中包含个人身份信息的模式,尤其是“健康与保健”之类的模式。 (事实上​​,对于健康数据,您可能需要更强的隔离。)

应用程序的数量不一定与模式的数量有任何关系。我已经开发了一个具有相当多模式的操作数据库,但有数百个应用程序,在三十年内以至少25种语言编程。