When designing software with databases is it worth normalising enumerations into separate tables?
e.g. if I have a class:
public class Alert
{
public int ID
public System.DayOfWeek AlertDay;
public string Message;
}
Should my corresponding Alert table simply be something like:
CREATE TABLE Alert
(
ID INT IDENTITY,
AlertDay INT,
Message VARCHAR(50)
)
Or should I normalise the days of the week to a separate table and add a FK relationship to my Alert table?
Is there a rule of thumb for this kind of design decision?