私はBook
という名前のテーブルとAuthor
というテーブルを持っています。著者と書籍をリンクするには、AuthorOfBook
という別のテーブルを作成しました。ここで、Priority
は整数値であり、正しい順序(1,2,3、...)で各書籍の著者を取得するのに役立ちます。書籍の著者をデータベースに保存する最良の方法は何ですか?
それは良い解決策か?最初は、文字列全体よりも多くの数値を格納することはスペースを節約するのに役立つだろうと考えましたが、次にブックの表紙画像でバイナリフィールドを追加しました。 AuthorOfBook
テーブルを削除し、外部キーBookId
をAuthor
テーブルに追加する必要がありますか?私がそれをすると、私のクエリはよりシンプルに見え、私は非常に多くのテーブルを必要としませんが、著者を管理することは難しくなります。私Priority
列に関する
そして、何?そのためのコーディング標準はありますか?
最初の解決策は正しいです。それで。 – Renzo
2番目の解決策は、その本が確実に1人の作者しか持てない場合にのみ使用できます。しかし、ブックテーブルに著者のFKを追加してください – Fabio
AuthorOfBookテーブルは、「複数の著者が本を書くことができる」ケースのデザインサポートを追加するものです。それを落とすと、多対多の関係が失われます。 – x82