I'm creating a (MySQL) table for site options, that will have multiple key/value rows (option_name, option_value). Some values will be boolean, some will be strings(varchars) and some might be int. Currently I have option_value set up as a varchar so that it's able to store all the values. Is there a better way for this? I was thinking of having 3 rows (enum for true false, int for int_value and varchar for string_value), however that seems inefficient. Is there a better way and/or am I doing this wrong?