小编Vic*_*sig的帖子

火车时刻表的 MySQL 数据库架构

我对 MySQL 数据库模式对于火车时刻表的外观感兴趣。

通常,这以表格形式呈现为最终结果。

Train No.    11111  22222  11111
Train Day    Mo-Fr  Sat    Sun
Station A  d 06.00  07.00  07.00
Station B  d 06.10         07.10
Station C  d 06.20  07.15   
Station D  a 06.30         07.40
Station D  d 06.35  07.25
Station E  d 06.45  07.45
Run Code Online (Sandbox Code Playgroud)

所以每列火车都有一个火车编号,但这不是唯一的,因为该编号将在周一至周五到周六和周日重复。然后一列火车会停在多个车站,但不是所有车站,有时车站需要到达 (a) 和出发 (d) 时间,或其中之一。

车站可以按距离排序。

到目前为止,我认为我需要表格:

  • 车站(ID、名称、距离、线路)
  • 火车(ID、火车编号、日间运营、详细信息)
  • 火车运行(Train.ID、Station.ID、arr/dep、time、notes)

这是否足够规范化?

  • 应该说周一至周五的火车 11111 只是一个包含大量日间操作组合的条目,即 7 列(M、T、W、Th、F、S、Su)?
  • 难道它不也应该处理只在一个日期运行并且每周不重复的一次性火车吗?

mysql schema database-design

7
推荐指数
2
解决办法
2万
查看次数

标签 统计

database-design ×1

mysql ×1

schema ×1