表: PhotoAlbum
的列:
ALBUMID
ALBUMNAME
AlbumDate
专辑描述
表:图片
的列:
PictureID
AlbumID
问题在于我使用图片ID作为对相册中图片的引用,因此该字段的每张相册的数据都是重复的。
答案 0 :(得分:9)
除非我遗漏了什么,否则我认为PictureId将是主要的,而AlbumID将是一个外键。
答案 1 :(得分:9)
我会说PictureID是主键,因为它(或者应该)对每张图片都是唯一的。毕竟,definition of primary key, according to Wikipedia:
在关系数据库设计中,唯一键或主键是唯一标识表中每一行的候选键。唯一键或主键包括单列或一组列。表中没有两个不同的行可以在这些列中具有相同的值(或值的组合)。根据其设计,表可以具有任意多个唯一键,但最多只有一个主键。
答案 2 :(得分:5)
PictureID,除非我遗漏了某些东西......
答案 3 :(得分:1)
如果您希望每张图片属于一张且只有一张相册,那么只有PictureID可以。
如果您希望每张图片都出现在多个相册中,那么您可以将PictureID和AlbumID组合为一个主键。也就是说,通过PictureID和它所属的专辑的组合,图片被唯一地标识。然后将PictureData保存在另一个表中(图片将更好地描述为PictureAlbum或其他)
答案 4 :(得分:1)
On First view pictureId应该是主键。 但是,如果我假设正确,将会有一个表格,用于存储有关PitctureId作为主键的图片信息(比如PictureMaster)那么
在表格中,pictureId和AlbumId togethere将创建PrimaryKey(复合主键)和AlbumId,PictureId将为ForeignKey。
答案 5 :(得分:1)
PictureID是主键,AlbumID是外键... PictureID是唯一的,没有相同名称,AlbumID也是一个具有唯一名称的组。