Multiple values in lookup fields

database-designnormalization

I know newer versions of MS Access allow multiple selections in lookup fields.

For example, if I'm collecting information on my students, I can have a field called Race with lookup values that include White, Black, Hispanic, Asian, etc. and then set that to allow multiple selection.

In term of db design, is it better to use this feature of Access…. OR to have a field for each Race category and then True/False values for each one? And maybe even have this in a separate table?

–edit

I'm asking my question about the table, not the form. I realize the front-end display is not identical to the back-end strucure. Is it better to have a bunch of true/false fields in the table OR just one lookup field that allows multiples? (knowing the form is the best place to define the actual lookup values)

Best Answer

For a single student, why would you have multiple selection for race? This for the situation you mentioned as example.

I'd see both options valid (lookup with multiple selection or radio buttons with true-false) depending on the situation you need to display. What you show in the front is not identical with what tables you have in the database. Do your tables to fit simple normalization rules and then just build queries and views to display in the Access UI. Read about normalization and normal forms and design your tables accordingly (I prefer by default 3rd normal form, but it's not mandatory, you could increase/decrease the form level as you see fit).

I think that this tutorial is done with Access users in mind.

You can find some good free data models here: Free data models. Some of them even have attached Access databases.

PS: more of a comment than an answer, but too verbose.