我熟悉数据库规范化技术,但我正在努力应对某种情况。我有近100份文件,每份都至少有一位作者。我想创建一些功能,用户可以询问特定于作者的文档,特定于年份,或者仅显示所有文档。我正在努力的部分是根据作者或作者的文件请求。
这是我的关系细分:作者有很多文件,文件有很多作者,文件有一年,文件有一个标题。这就是我必须要做的事情。
到目前为止,这是我的关系表:
作者表
+----------+-------------+ | id | name | +----------+-------------+ | 1 | David Noyce | +----------+-------------+
文件表
+----------+--------------------+----------+-----------+-----------+ | id | title | BLOB | Year | ???? | +----------+--------------------+----------+-----------+-----------+ | 1 | Car Crashes, WI | stuff | 2013 | ? | +----------+--------------------+----------+-----------+-----------+
我假设我希望作者ID(s)成为我的????在我的文档表中,如果每个文档只有一个作者,那可能会很好地工作,但事实并非如此。将文档与许多作者联系起来的最佳方式是什么?
答案 0 :(得分:3)
您只需添加一个联结表,允许文档和作者之间存在一对多或多对多的关系。
documentAuthor -------------- documentId authorId