i am creating a database structure for a new project and there is a table which one of the fields will receive/contain one of three values upon selection from a selection box on the website. the values would be (opened,suspended,closed) would it be necessary to make the field of type varchar(some value) or is there a better way of doing it? also some other times ill have a field who will accept one of two values which are a yes or a no and i usually just set the field of type varchar(3). i want to do it the correct way what other types can i set the field for these types of instances?
thanks
ps:
whats the purpose of setting a field to not null when creating the columns in a table? all that does is show an error when the developer doesnt insert a value for a field that is required. all that checking can be done on the client side or server side, whats its purpose of being done through the database? is it just there to make developers carefull for what fields are required for data entry?