0

我正在建立一个记录收集数据库。我有一个主发布表,其中包含标题、艺术家、格式、国家、日期、标签等 - 每一个都将是一个单独的表,外键连接回发布。我的问题是,它们单独的表中的所有外键是否都连接到 Release 中的一个主键(id),或者它们每个都连接到 Release 中的相应索引整数键?说到索引 - 那么是否有必要在上述所有要搜索的内容上创建一个单独的索引?

谢谢

4

1 回答 1

1

鉴于您提供的信息,您将具有以下表格结构

发布

ID、标题、ArtistID、FormatID、CountryID、Date、LabelID

艺术家 ID(Release 表中 ArtistID 的外键)、姓名等

格式 ID(版本表中 FormatID 的外键)、名称等

等等等等

那么是否有必要对上述所有要搜索的内容创建一个单独的索引?

取决于您计划如何搜索表格

编辑:

好的,所以每个表中的每个外键都连接到 Release 表中自己的 id - 不是主 id,对吗?

确切地。ArtistID 将连接到以 ID 为主键的 Artists 表,但在 Releases 表中它是外键。除日期外,其余字段的想法相同。

至于搜索,例如,搜索艺术家(表将有名字、姓氏或组名)应该连接到该艺术家的版本

然后,您在 ArtistFirstName 和 ArtistLastName 字段上创建索引 - 这些是 Artists 表中的字段,这就是您的搜索要搜索的内容。如果您希望显示艺术家的发布,那么您必须在 ArtistID 上加入 Artists 和 Releases 表(您将在搜索后获得)。

如果您阅读有关关系数据库设计和规范化的更多信息,将会有所帮助。

于 2012-09-11T20:26:30.343 回答