0

我正在尝试找到在应用程序中标记关键数据的解决方案。一个明显的想法是创建一个像“不可移动”这样的标志,但我想避免将同一列添加到 db 中的许多表中。所以我有了创建新模式的想法,我可以在其中存储这些日期。在这个模式中,我想保持公共中存在的所有表都具有相同的约束。我发现了几个优点:

  • 我可以撤销整个架构的删除权限,并只允许从公共架构中删除数据(对应用程序而言并不重要),
  • 我可以快速准备新版本的数据库进行测试 - 通过截断公共模式中的所有内容(在第二个中我只有关键数据),
  • 我通过而不是规则执行 SELECT 和其他操作,显示来自两个模式的数据并添加一个标记数据来源的虚拟列(仅在视图中),
  • 我不必在应用程序的配置中存储行的 ID,
  • 我有数据的逻辑分离(基本的和用户添加的)

这是个好主意吗?你觉得这有什么问题吗?这是一个好习惯吗?

提前致谢。

4

1 回答 1

0

如果您要这样做,简单的方法是使用表继承使其对 select 语句透明,并保持写入按规则重定向。这是完成表分区的方式,但在这种情况下,您可以根据不同权限的需要进行分区,而不是键。

于 2013-04-11T09:25:02.547 回答