0

うまくいけば、これは短くて簡単です。私は何か c# を書いていて、ホイールが 100 万回以上発明されている場所に到達しましたが、どれを使用すればよいかわかりません。まず、ルール:

  1. CharacterClasses があり、Skills があります。
  2. これらのそれぞれには、CSV からロードされた DataSet に DataTable があります。
  3. 各 CharacterClass は複数のスキルで構成されています
  4. 各スキルは複数の CharacterClasses に存在する場合があります

私の選択は次のようです:

A. 各スキル内の CharacterClassID のリストであるフィールドを作成します。これは非常に大きくなり、後でバランスをとるために CharacterClasses を編集するのが難しくなります。キャラクターを作成または編集するには、リストを反復処理する必要があります。

B. SkillID のリストを格納する CharacterClasses にフィールドを作成します。これにより、更新スキルのバランスを取ることが難しくなり、また、巨大なブロブ フィールドにつながります。繰り返しになりますが、リストを反復処理する必要がありますが、今回は CCID フィールドの Skills テーブルに CONTAINS クエリを実行したときに作成されたリストになります。

C. 実行時に、SkillID と CharacterClassID を一致として保持するヘルパー テーブルを作成します。

設計の観点からは C が最も賢明なように思えますが、そこにたどり着く方法がわかりません。DB 設計は、常に私にとってつまずきのポイントでした。私の脳はコーダーのブロックを扱っており、3 番目の構成ファイルを作成せずに CharacterClassID と SkillID を含むヘルパー テーブルを作成する方法に頭を悩ませることはできません (これはやりたくありません)。入力はありますか?私はこれについてすべて間違っていますか?

4

1 に答える 1

0

リレーションを作成する必要があるため、適切なリレーショナル データベースを使用する必要があります。このような単純なタスクについては、SQLite を検討します。

于 2013-07-24T13:49:30.527 に答える