我希望能够创建可以基于固定日期,每天重复,在一周的特定日期重复,在一年的特定月份重复,每年的特定日期重复以及在每年的特定日期重复执行的日程表一天中的特定时间。

请问我该如何为这个问题建立数据库表?

编辑#1

基本上,我正在编写一个应用程序,允许用户安排在各种预配置时间发送的预配置问候语。我知道我需要一个表来存储有关时间表的信息(例如圣诞节,Marketing One,... |以及时间表应在何时运行)。然后是另一个表格,用于记录已执行的计划,发送的问候,向谁发送的电子邮件以及发送的电子邮件;基本上是交易表。

我的问题是设计Schedule表,因为我想允许用户在特定日期,一周中的特定日期(重复),每月的特定日期,每天的特定时间以及每年的特定日期/月份(例如25/12)。

如何为时间表创建一组表,以灵活的方式处理这些输入?

最佳答案

这是我想出的表结构;

Schedule
 - ScheduleName
 - ScheduleTypeId (Daily, Weekly, Monthly, Yearly, Specific)
 - StartDate
 - IntervalInDays
 - Frequency
 - FrequencyCounter

ScheduleDaily
 - ScheduleDailyId
 - ScheduleId
 - TimeOfDay
 - StartDate
 - EndDate

ScheduleMonthly
 - ScheduleMonthlyId
 - ScheduleId
 - DayOfMonth
 - StartDate
 - EndDate

ScheduleSpecific
 - ScheduleSpecificId
 - ScheduleId
 - SpecificDate
 - StartDate

...

ScheduleJob
 - ScheduleJobId
 - ScheduleId
 - ScheduleTypeId
 - RunDate
 - ScheduleStatusId

关于database-design - 用于计划任务的数据库表设计,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12089431/

10-11 08:09