Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 跟踪实体属性的数据库设计_Database_Database Design_Relational Database_System - Fatal编程技术网

Database 跟踪实体属性的数据库设计

Database 跟踪实体属性的数据库设计,database,database-design,relational-database,system,Database,Database Design,Relational Database,System,我正在寻找一个数据库设计,可以跟踪和管理具有系统属性的用户 情况: 用户可以访问组织内和每个系统内的多个系统、不同的属性,如创建日期、系统登录名、系统用户id等。目前,我们有一个平面数据库,因此每个属性都在一行中,并随着更多系统属性的添加而继续增长。当前使用的工具是Access数据库,当前列数为231列OMG!这已经失控了 假设: 有很多属性需要跟踪,数据库中的一个特定表不应该太宽,无法容纳这些属性。为每个系统创建一个表本身就变得一团糟,因为每个系统可能在列方面发生变化。我们需要一个界面,让管理

我正在寻找一个数据库设计,可以跟踪和管理具有系统属性的用户

情况: 用户可以访问组织内和每个系统内的多个系统、不同的属性,如创建日期、系统登录名、系统用户id等。目前,我们有一个平面数据库,因此每个属性都在一行中,并随着更多系统属性的添加而继续增长。当前使用的工具是Access数据库,当前列数为231列OMG!这已经失控了

假设: 有很多属性需要跟踪,数据库中的一个特定表不应该太宽,无法容纳这些属性。为每个系统创建一个表本身就变得一团糟,因为每个系统可能在列方面发生变化。我们需要一个界面,让管理员可以轻松地管理它

让我举一个例子: 在谷歌工作的用户Sunny可以访问DMV、IRS和Whitehouse。 对于DMV,Sunny有用户名、pin码和授权IP地址字段。对于IRS,Sunny有一个税务ID号、一个组织号、一个清关号和一个访问到期日。对于Whitehouse,Sunny有用户名、密码、访问计划、门户地址和用户类型。随着Sunny在谷歌工作多年,事情慢慢地发生了变化。Sunny可以访问NRA、HP、Facebook和Intel。国税局增加了一个部门清关信息。Whitehouse需要一个授权ID。管理员需要查看Sunny拥有什么访问权限并查看系统;他们很容易找到他们需要的东西

结论 修改表和添加属性可能会定期更改。开发一个表来处理这个问题似乎是件苦差事。我需要一个数据库设计,可以适应这样的变化

问题: 如何设计一个数据库来容纳这样的东西

提前谢谢


另外,我问了一个与此类似的问题,但这是一个针对实际存在的软件的问题。

您是否还需要/想要更改用户界面来管理任何新的结构?还是这项开销太大?@Randy我宁愿不更改UI来更新结构。对于我所分配的资源来说,这将是太多的工作。谢谢然后需要某种形式的属性对结构。又名名称-值对。这些更难使用,但允许您描述的灵活性,并且不需要更改UI@兰迪,谢谢!还有其他有用的模式吗?您询问UI是否需要更改。如果是的话,你会推荐什么样的款式?看看。这是一个试图解决类似问题的设计。