【发布时间】:2010-12-26 23:13:05
【问题描述】:
我想获得一些关于数据库设计的建议。具体来说,考虑以下(假设的)场景:
- 员工 - 包含所有员工详细信息的表格
- Users - 存放拥有用户名和密码以访问软件的员工的表格
- UserLog - 用于跟踪用户何时登录和注销并计算的表 使用软件的时间
在这种情况下,如果员工离开公司,我还想确保将他们从Users 表中删除,以便他们无法再访问该软件。我可以使用ON DELETE CASCADE 作为Employees 和Users 中EmployeeID 之间FK 关系的一部分来实现这一点。
但是,我不想从UserLog 中删除他们的详细信息,因为我有兴趣整理有关人们在软件上花费多长时间的数据,并且他们不再在公司工作这一事实并不意味着他们的用户行为不再相关。
我剩下的是一个表UserLog,它与我数据库中的任何其他表都没有关系。 这是一个明智的想法吗?
浏览过书籍等/在网上搜索过,我没有遇到任何带有与其他人没有关系的表的数据库模式,所以我的直觉是说我的方法不可靠......
请给我一些指导。
【问题讨论】:
标签: sql-server-2005 database-design