Difference between revisions of "InstaGov/schema/answer"
Jump to navigation
Jump to search
(note about *_Text fields) |
(unique key) |
||
Line 6: | Line 6: | ||
** The '''*_Text''' fields are optional overrides to the values in {{l/same|question}}, but the latter has not yet been implemented; I think I may have decided at some point that it wasn't necessary. I'm leaving these fields in for now but not implementing them in code. They might get deleted later. | ** The '''*_Text''' fields are optional overrides to the values in {{l/same|question}}, but the latter has not yet been implemented; I think I may have decided at some point that it wasn't necessary. I'm leaving these fields in for now but not implementing them in code. They might get deleted later. | ||
==History== | ==History== | ||
− | * '''2013-01-07''' Added "Summary" field, which I had removed earlier when I was still thinking of letting this be heavily dependent on MW, and who/when fields. | + | * '''2013-01-07''' |
+ | ** Added "Summary" field, which I had removed earlier when I was still thinking of letting this be heavily dependent on MW, and who/when fields. | ||
+ | ** Added UNIQUE KEY "content" to prevent duplicate answers for the same question. | ||
==SQL== | ==SQL== | ||
<mysql>CREATE TABLE `answer` ( | <mysql>CREATE TABLE `answer` ( | ||
Line 20: | Line 22: | ||
`WhoEdited` INT DEFAULT NULL COMMENT "ID of user who last edited the record", | `WhoEdited` INT DEFAULT NULL COMMENT "ID of user who last edited the record", | ||
`QtyEdits` INT DEFAULT NULL COMMENT "number of times this record has been edited", | `QtyEdits` INT DEFAULT NULL COMMENT "number of times this record has been edited", | ||
− | PRIMARY KEY(`ID`) | + | PRIMARY KEY(`ID`), |
+ | UNIQUE KEY `content` (`ID_Question`,`Summary`) | ||
) | ) | ||
ENGINE = MYISAM;</mysql> | ENGINE = MYISAM;</mysql> |
Revision as of 02:24, 8 January 2013
About
- Purpose: implements answers
- Rules: Any question may have zero or more answers. New answers can be added at any time.
- Notes:
- This table originally had a "WhenExpires" field; it was removed for the same reasons given in notes for the "question" table.
- The *_Text fields are optional overrides to the values in question, but the latter has not yet been implemented; I think I may have decided at some point that it wasn't necessary. I'm leaving these fields in for now but not implementing them in code. They might get deleted later.
History
- 2013-01-07
- Added "Summary" field, which I had removed earlier when I was still thinking of letting this be heavily dependent on MW, and who/when fields.
- Added UNIQUE KEY "content" to prevent duplicate answers for the same question.
SQL
<mysql>CREATE TABLE `answer` (
`ID` INT NOT NULL AUTO_INCREMENT, `ID_Question` INT NOT NULL COMMENT "question.ID for which this is an answer", `Summary` VARCHAR(255) NOT NULL COMMENT "short description of answer", `Page` VARCHAR(127) COMMENT "URI of optional site page giving more details", `Pos_Text` VARCHAR(63) DEFAULT NULL COMMENT "optional: text to show at the 'yes' end of the scale (overrides question default)", `Neg_Text` VARCHAR(63) DEFAULT NULL COMMENT "optional: text to show at the 'no' end of the scale (overrides question default)", `WhenCreated` DATETIME NOT NULL COMMENT "when this records was entered", `WhoCreated` INT NOT NULL COMMENT "ID of user who added the record", `WhenEdited` DATETIME DEFAULT NULL COMMENT "when this question was last edited", `WhoEdited` INT DEFAULT NULL COMMENT "ID of user who last edited the record", `QtyEdits` INT DEFAULT NULL COMMENT "number of times this record has been edited", PRIMARY KEY(`ID`), UNIQUE KEY `content` (`ID_Question`,`Summary`) ) ENGINE = MYISAM;</mysql>