0

列車の時刻表でSQLite3データベーススキーマがどのようになるかに興味があります。

通常、これは最終結果として表形式で表示されます。

MからFのサンプルスケジュール

STATION A   STATION B    STATION C ... STATION K
6:00        6:15         7:30          9:00
6:30        6:45         7:45          9:30
7:00        7:15         ----          10:00
8:00        8:15         9:30          11:00

週末のサンプルスケジュール

STATION A   STATION B    STATION C ... STATION K
7:00        7:15         8:30          10:00
8:30        8:45         8:45          10:30
9:00        ----         9:30          11:00
10:00       10:15        10:30         12:00

列車には番号がありません(A列車、12列車など)。したがって、内部番号を作成できます。内部番号は、月曜日から金曜日から土曜日と日曜日まで一意であるか、重複している必要があります。次に、列車はすべてではありませんがいくつかの駅に停車します。駅には到着時間(a)と出発時間(d)、またはどちらか一方が必要な場合があります。

駅は距離順に並べ替えることができます。

これまでのところ、次のテーブルが必要だと考えています。

  • 駅(ID、名前、距離、路線)
  • 電車(ID、電車番号、日帰り運行、詳細)
  • 列車の運行(Train.ID、Station.ID、arr / dep、時間、メモ)

これは十分に正規化されていますか?

スキーマは正しいので、変更を加える必要がありますか?

4

1 に答える 1

0

ルートの別のテーブルと、電車をルートにリンクする別のテーブルが必要になる場合があります。部分的なルートを作成し、1つの列車を複数の部分的なルートにリンクすることができます。

于 2012-04-07T23:42:24.347 に答える