我使用驼峰套管作为我的列名,我试图不使用ID作为我的表的主键。
所以对某些表来说似乎很有待。配置文件表我调用主键profileID但是将两个表连接在一起的表怎么样。 ProfileImageID的约定是什么?将它称为ID会更好吗?对于主键,命名约定只是ID或____ ID?
个人资料表
userID (PK) | Name
个人资料图片表
??? (PK) | userID | photoID
图片表
photoID(PK) | Image
答案 0 :(得分:1)
我的建议:将表格命名为复数并使用表格名称(单数)加上" Id"对于钥匙:
create table Profiles (
ProfileId int . .
);
create table ProfileImages (
ProfileImageId int . . .,
ProfileId int references Profiles(ProfileId),
ImageId int references Images(ImageId)
);
create table Images (
ImageId int . . .,
. . .
);
命名约定没有一个正确的答案。但是,一致性和可理解性很重要。你应该不做的是有一个名为Images
的表和一个名为PhotoId
的主键。这只是引入了一定程度的混乱。