我正在为文件创建一个所有权表。文件可以由单个用户(表用户)或一组用户(表用户组)拥有。我想把这整个关系作为一个表,每个元组都是一个组的所有权或用户对文件的所有权。
用户: User_ID (PK),姓名,电子邮件
用户组: UserGrp_ID (PK),name,creator_ID(FK to Users)
TestGroupOwnerships:???
我认为将这两种关系作为一个表来做是可能的,但我不确定如何。如果用户或用户组表需要更改(仍处于计划阶段),也可以接受。
谢谢,
亚历
答案 0 :(得分:3)
你可以:
ALTER TABLE dbo.MyTable ADD CONSTRAINT
CK_MyTable CHECK (Column1 IS NOT NULL OR Column2 IS NOT NULL)
GO
答案 1 :(得分:1)
备注强>
OwnerID = PartyID
(OwnerId
是文件表中PartyID
的角色名称。UserID = PartyID
(UserID
是用户表中PartyID
的角色名称。)GroupID = PartyID
(GroupID
是组表中PartyID
的角色名称。)答案 2 :(得分:0)
怎么样:
有一个表(File,OwnerID(int),OwnerType(Char(1))
其中OwnerID可以是UserID或GropuID,OwnerType可以是('G' - 组或'U' - 用户)
或....
拥有一个带有(File,OwnerID,GroupID)的表,其中已填充OwnerID的touple连接到用户表,并且GroupID填充的元组连接到Groups表。