
Originally Posted by
jzwp11
The rule is that like data should be stored in 1 table, so the words should be in 1 table not hundreds of tables. Since the words are related to essays which in turn are related to students, I assume that you would want to capture that info as well. A structure similar to this would be appropriate
tblStudents
-pkStudentID primary key, autonumber
-txtFName
-txtLName
tblStudentEssays
-pkStudentEssayID primary key, autonumber
-fkStudentID foreign key to tblStudents
-txtEssay
tblStudentEssayWords
-pkStuEssayWordsID primary key, autonumber
-fkStudentEssayID foreign key to tblStudentEssays
-txtWord (your field to hold the word)
Out of curiosity, how do you identify a word as an adjective, noun, verb etc.? Do you do that manually? If so you could add another field to the tblStudentEssayWords that you could use to flag the type of word.
tblStudentEssayWords
-pkStuEssayWordsID primary key, autonumber
-fkStudentEssayID foreign key to tblStudentEssays
-txtWord (your field to hold the word)
-fkPartsOfSpeechID foreign key to tblPartsOfSpeech
tblPartsOfSpeech (essentially a lookup table that identifies how the word is used: noun, verb etc.)
-pkParstOfSpeechID primary key, autonumber
-txtPartOfSpeeech
You would run an aggregate query and group by the part of speech field to do your counting