我设计了一个使用 GUID 的数据库,UserID
但我将UserId
其作为外键添加到许多其他表中,并且由于我计划拥有大量数据库输入,因此我必须将其设计好。
我还使用 ASP Membership 表(不仅仅是配置文件成员、用户和角色)。
所以目前我在每个其他表中都使用 GUID 作为 PK 和 FK,这可能是不好的设计?我认为可能更好,并且是我的问题的来源,我是否应该在用户表中添加UserId(int)
作为主键并使用此字段作为其他表的外键和用户GUID UserId
仅供参考aspnet_membership
?
aspnet_membership{UserID(uniqueIdentifier)}
Users{
UserID_FK(uniqueIdentifier) // FK to aspnet_membership table
UserID(int) // primary key in this table --> Should I add this
...
}
In other tables user can create items in tables and I always must add UserId for example:
TableA{TableA_PK(int)..., CreatedBy(uniqueIdentifier)}
TableB{TableB_PK(int)..., CreatedBy(uniqueIdentifier)}
TableC{TableC_PK(int)..., CreatedBy(uniqueIdentifier)}
...