Esta es una forma sencilla:
EventID Title Mon Tue Wed Thu Fri Sat Sun BeginningDate EndDate
1 MyEvent 0 0 0 1 0 0 0 14-01-2010 14-01-2033
Cómo usar:
Simplemente establezca un 1 en los días que desea ejecutarlo. Dado que no es probable que el calendario de 7 días cambie pronto, esa estructura debería ser inmutable. Puede elegir cualquier combinación de días.
Para recapitular:
Corre todos los jueves:
EventID Title Mon Tue Wed Thu Fri Sat Sun BeginningDate EndDate
1 MyEvent 0 0 0 1 0 0 0 14-01-2010 14-01-2033
Corre todos los jueves y lunes:
EventID Title Mon Tue Wed Thu Fri Sat Sun BeginningDate EndDate
1 MyEvent 1 0 0 1 0 0 0 14-01-2010 14-01-2033
Además, solo obtiene una fila por calendario de eventos, lo que es más fácil y limpio de manejar programáticamente.
Por ejemplo, para buscar todos los eventos que se ejecutarán el lunes, haga lo siguiente:
select * from Events where Mon = 1