我知道关于在RDBS中建立时间表模型的内容已经被讲述得非常详细了,但我找不到任何有关存储时间表的可用技术的文档。
我的情况如下:
- 我有一个保存可用位置的表格和一个保存实际课程的表格。
- 每个位置都有自己独特的日程安排
- 每个课程都可以在任何地方和任何时间进行安排,但有一些例外:
- 一个课程只能占用一个时间段(例如:如果将A课程安排在P1地点的12:00时开始,持续1小时,那么下一次A课程只能在12:00之前或13:00之后,在任何有空闲时间段的地方安排;不允许在同一时间在两个地方安排A课程)
- 在一个地方只能有一个带时间段的课程
- 模型应支持已安排课程的版本控制/历史记录
现在,我该如何在SQL数据库中表示这个数据模型?
我不是在寻找现成的精确模式,而是希望有人能够编写可用的建模技术及其比较,以便我可以用来解决这个问题
例如:对于树形结构/分层数据,有一个被广泛记录的“修改前序树遍历算法”,是否有类似的算法/技术来处理时间段?