For years now, I've seen two sides to the discussion of how to handle enumeration data, especially in normalized databases. In most cases, enumerations need to be explicitly defined and understood by code for decision-making. Everyone seems to understand and agree on this point. This is when teh discussion diverges. Side One When that happens, may people make the argument that enumerations do not need to be in the database in a normalized table because the data can just be represented as a string or number/ordinal in the database, the same way it is represented in the code. This saves additional database work up front and allows database tools like hibernate to work more simply. Side Two The other side of the discussion says that enumerations represent defined data that sometimes warrants refactoring and migrations, and accomplishing said changes is much easier when data is normalized. Additionally, the other side says that we should be able to query ...