如何在SQL数据库中将数据标记为演示数据

时间:2014-08-19 09:19:43

标签: normalization database-normalization

我们在数据库中拥有帐户,交易,联系人,任务和其他一些对象。当我们想要将一些新组织设置为" Demo Data"他们可以按照自己的意愿查看/编辑和删除。

我们还希望为用户提供删除所有演示数据的选项,以便我们能够快速识别它。

以下是两种可能的方法:

  1. 有一个" IsDemoData"所有上述对象的字段:这意味着如果需要新类型的演示数据,则需要添加该字段。此外,它会增加数据库大小,因为IsDemoData对于任何非演示数据的记录都是多余的。

  2. 拥有包含TableName和ID的DemoDataLookup表。这里的ID不是强外键,而是表名中表中记录的理论外键。

  3. 其中哪一种更好,是否有更好的标准化解决方案。

1 个答案:

答案 0 :(得分:0)

作为一名DBA,我认为我更愿意看到名为" demo"的模式中隔离的演示数据。

对于某些SQL数据库管理系统来说这很简单,对其他人来说并不那么简单。例如,在PostgreSQL中,您可以使用不合格的名称编写所有SQL,并将" demo" schema首先在架构搜索路径中。当您的客户不再需要演示数据时,只需删除演示模式。