当前位置:  开发笔记 > 后端 > 正文

在(My)SQL数据库中存储事件时间的最佳方法

如何解决《在(My)SQL数据库中存储事件时间的最佳方法》经验,为你挑选了1个好方法。

我正在尝试确定在MySQL数据库中存储事件时间的最佳方法.这些应该尽可能灵活,能够代表"单一事件"(在特定时间开始,不一定需要结束时间),"全天"和"多日"事件,重复事件,重复全天事件,可能是"本月第3个星期六"类型的活动等.

请建议一些经过验证的数据库方案.



1> Scott Langha..:

表:事件

StartTime(dateTime)

EndTime(dateTime)为null,没有结束时间

RepeatUnit(int)null = noRepeat,1 =小时,2 =天,3 =周,4 = dayOfMonth,5 =月,6 =年

NthDayOfMonth(int)

RepeatMultiple(int)例如,将RepeatUnit设置为3,并且每两周设置为2

Id - 如果需要,StartTime可能适合您唯一标识事件.

名称(字符串) - 如果需要,为事件指定的名称

这可能有所帮助.它需要相当数量的代码才能解释重复的时间.必须忽略分辨率低于重复单位的部分时间字段.这个月的第3个星期六也不容易...... NthDayOfMonth信息仅仅是为了做这种功能所必需的.

与重复出现的地方所需的代码相比,这需要的数据库模式很简单.

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有