0

学習管理システム(LMS)をゼロから設計することになっています。「Course」エンティティに関しては、3つのレベルの情報(Course、Topic、Sub_Topic)があります。木のように想像してみてください。さて、これらの方法のどれ(またはより良い方法?)がより有用ですか?

1-「隣接リストモデル」(http://www.sqlsummit.com/AdjacencyList.htm)または

2-これらのレベルの1つにそれぞれ3つのテーブルを使用し、それらを結合してレコードを取得しますか?

これらの各レベルには「個別の属性」があり、「クイズ」とも関連していることに注意してください。したがって、これらの各フィールドの間には、「クイズエンティティ」との相互作用もあります。

PSシステムはDjangoとMySQLに実装されます。

4

1 に答える 1

0

ツリーには明確に分離されたレベルがあり、それぞれが異なる種類のデータを保持しているため、「3つのテーブル」アプローチを使用します。

どちらの方法でもJOINが必要ですが、この方法では、正しい参照整合性を簡単に適用できます(たとえば、コースにはトピックを含めることができますが、その逆はできません)。これは当然、サイクルを回避します。

「クイズエンティティ」がこれらすべてをどのように考慮しているかはわかりません。より多くの情報を提供する気ですか?

于 2012-05-29T22:41:18.740 に答える