我的数据库有以下表格:
Resource
:某些资源可以在网站上传Groups
:网站上的群组Users
:网站上的用户(不一定是任何群组的一部分,但如果他们愿意,可以是他们的一部分)现在,当某个人当前上传资源时,默认情况下会向该资源uploader
提供该资源的所有权。因此resource
表具有与OwnerID
表的外键关联的列User
。
但现在,必须对此进行更改,以便resource
的所有权可以授予用户或整个群组。
我试图决定迁移方案,将此owner
用户移动到可能是user
或group
的实体。直觉是当有人上传资料时,他可以选择其所有者为user
或整个group
。
目前我的迁移计划涉及:
OwnerType
表格中添加UserOwner
(用户,群组,全局)和GroupOwner
以及Material
(可能更差的规范化表格)。OwnerType
可以为Global
- 如果所有者为Group
其他实体group
,则为user
。Resource
表时,我可以检查OwnerType
以便从user
表或group
表中选择其所有者。< / LI>
醇>
我不知道这是不是好方法。我使用的是实体框架,因为User
和Group
几乎没有任何需要我制作广义实体的relationaship,所以事情已经开始变得难看了。
有些专家可以指导我吗?在这种情况下,通常认为什么是良好的迁移计划?感谢您提供任何帮助或建议。