July 11th, 2000, 06:09 PM
What I am after here is some intelligent advice concerning the best way to store some data the user enters when siging up for access to my site.
When the user signs up, he will answer various questions about himself. Some of the questions will be answered using the html form element select, which will provide them with a list of choices from a drop down list as i am sure you are familiar with. My question is, how should i store this data so i can easily modify it later? (add questions, change answers in case of spelling errors etc.) Should I make a table for each question? Should I just store the full text of the answer? Should I create a mapping from answer to integer and store that?
Any advice appreciated. Thanks.
July 11th, 2000, 06:41 PM
Welcome to the wonderful world of database normalization! Anytime you have a limited set of responses to a form element, it's a good idea to use normalization. You create a table of those responses mapped to an integer id. You can then store in your "main" table just the integer. Queries are faster as it's quicker to compare an integer and the tables can be joined. If you are worried that you might have several queries to build the form, you can create a static page that is updated only when you make a change to the table.