Difference between revisions of "InstaGov/schema/rating"
Jump to navigation
Jump to search
(unique key: one rating per user per answer) |
m |
||
Line 16: | Line 16: | ||
`WhenDone` DATETIME NOT NULL COMMENT "when this rating was posted", | `WhenDone` DATETIME NOT NULL COMMENT "when this rating was posted", | ||
`Remark` VARCHAR(255) COMMENT "comments on this rating (can include link)", | `Remark` VARCHAR(255) COMMENT "comments on this rating (can include link)", | ||
− | PRIMARY KEY(`ID`) | + | PRIMARY KEY(`ID`), |
UNIQUE KEY(`ID_User`,`ID_Answer`) | UNIQUE KEY(`ID_User`,`ID_Answer`) | ||
) | ) | ||
ENGINE = MYISAM;</mysql> | ENGINE = MYISAM;</mysql> |
Revision as of 16:20, 9 January 2013
About
- Purpose: Records the current value of one user's rating of a given answer (which in turn is tied to a specific question. These are the values which are aggregated to calculate the voting results for each question.
- Rules:
- Any answer may have zero or more ratings.
- Each user sets the value of their rating for each answer, and can change that rating at any time.
- Changes to ratings are logged in the rating log.
History
- 2013-01-09 Removed the "ID_Proxy" field; see rating_log for explanation; added unique key: one rating per answer per user.
SQL
<mysql>CREATE TABLE `rating` (
`ID` INT NOT NULL AUTO_INCREMENT, `ID_User` INT COMMENT "user.ID who gave this rating", `ID_Answer` INT NOT NULL COMMENT "answer.ID for which this is a rating", `ID_Log` INT NOT NULL COMMENT "ID of log event which posted this value", `Value` INT NOT NULL COMMENT "rating value", `WhenDone` DATETIME NOT NULL COMMENT "when this rating was posted", `Remark` VARCHAR(255) COMMENT "comments on this rating (can include link)", PRIMARY KEY(`ID`), UNIQUE KEY(`ID_User`,`ID_Answer`) ) ENGINE = MYISAM;</mysql>