从纯粹的意义上讲,我会避免使用string选项:它增加了您不需要的额外编码/解码层。在国际化的情况下,它也可能使您不知所措。
由于一周中的天数是7,因此我将保留7列,可能是布尔值。这也将便于后续查询。如果该工具曾经在工作周在不同日期开始的国家/地区使用过,则这也将很有用。
我会避免查找,因为那样会导致过度规范化。除非您的查找项目集不明显或可能会更改,否则它是过大的。如果是一周中的几天(例如,与美国各州不同),我会在固定的情况下安然入睡。
考虑到数据域,我认为位域不会为您节省大量空间,只会使您的代码更复杂。
最后,一个关于领域的警告:许多学校在他们的日程安排上做一些奇怪的事情,他们“交换日”以平衡整个学期中每种类型的平日数量,尽管有假期。对于您的系统,我尚不清楚,但是最好的方法也许是存储一张表中预计要上课的实际日期的表。这样,如果一周中有两个星期二,老师可以因两次出现而获得报酬,而被取消的星期四的老师将不会获得报酬。