I agree with Corbin and Ignacio Vazquez-Abrams, and here are some other notes:
The main table
Tracker
manages different survey name and descriptions.
Then, I'd call it Survey
with attributes surveyId
, name
and description
.
The table
Card
holds information on each person who has been surveyed.
Then, I'd call it SurveyedPerson
with attributes surveryPersonId
etc.
Survey
holds the results of eachCard
response for the survey being tracked byTracker
and has a unique composite key.
Then, SurveyResult
(or Answer
) holds the results of each SurveyPerson
response for the Survey
(being tracked by Survey.surveyId
) and has a unique composite key.
In your first question I did not understand the purpose of these tables (see my comment on your first question). I don't know whether your original names are special terms in the field of the survey science or anything but the names above seem easier to understand, read and therefore maintain (for me, at least).
Are you sure that you need the
Card.trackId
attribute? It seems duplication ofSurvey.trackId
(so it's redundant).Are you sure that you don't need to store multiple
Survey
s (answers) for the sameCard
(person)? What happens when the same person answers to multiple surveys? Do you duplicate their name?Attribute lengths in the
Card
table seems too short. You might have problems with the new name of this guy. AFAIK email addresses also could be 254 characters long email addresses also could be 254 characters long.
I agree with Corbin and Ignacio Vazquez-Abrams, and here are some other notes:
The main table
Tracker
manages different survey name and descriptions.
Then, I'd call it Survey
with attributes surveyId
, name
and description
.
The table
Card
holds information on each person who has been surveyed.
Then, I'd call it SurveyedPerson
with attributes surveryPersonId
etc.
Survey
holds the results of eachCard
response for the survey being tracked byTracker
and has a unique composite key.
Then, SurveyResult
(or Answer
) holds the results of each SurveyPerson
response for the Survey
(being tracked by Survey.surveyId
) and has a unique composite key.
In your first question I did not understand the purpose of these tables (see my comment on your first question). I don't know whether your original names are special terms in the field of the survey science or anything but the names above seem easier to understand, read and therefore maintain (for me, at least).
Are you sure that you need the
Card.trackId
attribute? It seems duplication ofSurvey.trackId
(so it's redundant).Are you sure that you don't need to store multiple
Survey
s (answers) for the sameCard
(person)? What happens when the same person answers to multiple surveys? Do you duplicate their name?Attribute lengths in the
Card
table seems too short. You might have problems with the new name of this guy. AFAIK email addresses also could be 254 characters long.
I agree with Corbin and Ignacio Vazquez-Abrams, and here are some other notes:
The main table
Tracker
manages different survey name and descriptions.
Then, I'd call it Survey
with attributes surveyId
, name
and description
.
The table
Card
holds information on each person who has been surveyed.
Then, I'd call it SurveyedPerson
with attributes surveryPersonId
etc.
Survey
holds the results of eachCard
response for the survey being tracked byTracker
and has a unique composite key.
Then, SurveyResult
(or Answer
) holds the results of each SurveyPerson
response for the Survey
(being tracked by Survey.surveyId
) and has a unique composite key.
In your first question I did not understand the purpose of these tables (see my comment on your first question). I don't know whether your original names are special terms in the field of the survey science or anything but the names above seem easier to understand, read and therefore maintain (for me, at least).
Are you sure that you need the
Card.trackId
attribute? It seems duplication ofSurvey.trackId
(so it's redundant).Are you sure that you don't need to store multiple
Survey
s (answers) for the sameCard
(person)? What happens when the same person answers to multiple surveys? Do you duplicate their name?Attribute lengths in the
Card
table seems too short. You might have problems with the new name of this guy. AFAIK email addresses also could be 254 characters long.
I agree with Corbin and Ignacio Vazquez-Abrams, and here are some other notes:
The main table
Tracker
manages different survey name and descriptions.
Then, I'd call it Survey
with attributes surveyId
, name
and description
.
The table
Card
holds information on each person who has been surveyed.
Then, I'd call it SurveyedPerson
with attributes surveryPersonId
etc.
Survey
holds the results of eachCard
response for the survey being tracked byTracker
and has a unique composite key.
Then, SurveyResult
(or Answer
) holds the results of each SurveyPerson
response for the Survey
(being tracked by Survey.surveyId
) and has a unique composite key.
In your first question I did not understand the purpose of these tables (see my comment on your first question). I don't know whether your original names are special terms in the field of the survey science or anything but the names above seem easier to understand, read and therefore maintain (for me, at least).
Are you sure that you need the
Card.trackId
attribute? It seems duplication ofSurvey.trackId
(so it's redundant).Are you sure that you don't need to store multiple
Survey
s (answers) for the sameCard
(person)? What happens when the same person answers to multiple surveys? Do you duplicate their name?Attribute lengths in the
Card
table seems too short. You might have problems with the new name of this guy. AFAIK email addresses also could be 254 characters long.