Revision 11221
Added by Aaron Marcuse-Kubitza over 10 years ago
VegCore.my.sql | ||
---|---|---|
158 | 158 |
KEY `fk_dataset_dataset1_idx` (`parent`), |
159 | 159 |
KEY `fk_source_party2_idx` (`first_publisher`), |
160 | 160 |
KEY `dataset_dataset_source_fkey1_idx` (`dataset_source`), |
161 |
CONSTRAINT `fk_source_party2` FOREIGN KEY (`first_publisher`) REFERENCES `source` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
162 |
CONSTRAINT `fk_source_party_list1` FOREIGN KEY (`data_owners`) REFERENCES `party_list` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
163 | 161 |
CONSTRAINT `dataset_dataset_source_fkey1` FOREIGN KEY (`dataset_source`) REFERENCES `source` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
164 | 162 |
CONSTRAINT `fk_dataset_dataset1` FOREIGN KEY (`parent`) REFERENCES `dataset` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
165 | 163 |
CONSTRAINT `fk_dataset_source1` FOREIGN KEY (`id`) REFERENCES `source` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
166 |
CONSTRAINT `fk_dataset_traceable1` FOREIGN KEY (`id`) REFERENCES `traceable` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
167 |
CONSTRAINT `fk_source_party1` FOREIGN KEY (`contacts`) REFERENCES `party_list` (`id`) ON DELETE CASCADE ON UPDATE CASCADE |
|
164 |
CONSTRAINT `fk_source_party1` FOREIGN KEY (`contacts`) REFERENCES `party_list` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
165 |
CONSTRAINT `fk_source_party2` FOREIGN KEY (`first_publisher`) REFERENCES `source` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
166 |
CONSTRAINT `fk_source_party_list1` FOREIGN KEY (`data_owners`) REFERENCES `party_list` (`id`) ON DELETE CASCADE ON UPDATE CASCADE |
|
168 | 167 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='a collection of records from the same place, with the same attribution requirements'; |
169 | 168 |
/*!40101 SET character_set_client = @saved_cs_client */; |
170 | 169 |
|
... | ... | |
713 | 712 |
/*!40101 SET character_set_client = utf8 */; |
714 | 713 |
CREATE TABLE `project` ( |
715 | 714 |
`id` varbinary(767) NOT NULL, |
715 |
`name` varbinary(767) NOT NULL, |
|
716 |
`dataset` varbinary(767) DEFAULT NULL, |
|
716 | 717 |
`info` set('hstore') COLLATE utf8_bin DEFAULT NULL, |
717 | 718 |
PRIMARY KEY (`id`), |
718 |
CONSTRAINT `project_id_fkey1` FOREIGN KEY (`id`) REFERENCES `dataset` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
719 |
UNIQUE KEY `project__unique` (`dataset`,`name`), |
|
720 |
KEY `project_id_fkey1_idx` (`dataset`), |
|
721 |
CONSTRAINT `project_id_fkey1` FOREIGN KEY (`dataset`) REFERENCES `dataset` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, |
|
719 | 722 |
CONSTRAINT `fk_project_event1` FOREIGN KEY (`id`) REFERENCES `event` (`id`) ON DELETE CASCADE ON UPDATE CASCADE |
720 | 723 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='A "project established to collect vegetation plot data. Each plot originates as part of a project." ("VegBank":http://vegbank.org/vegbank/views/dba_tabledescription_detail.jsp?view=detail&wparam=project&entity=dba_tabledescription&where=where_tablename)'; |
721 | 724 |
/*!40101 SET character_set_client = @saved_cs_client */; |
Also available in: Unified diff
fix: schemas/VegCore/ERD/VegCore.ERD.mwb: project: allow it to have a dataset rather than being one, because projects do not always have separate attribution requirements (e.g. in Madidi they don't). this also fixes a bug where projects whose datasets had a parent dataset (e.g. VegBank) would need a dummy event for that parent dataset so that the fkeys on both dataset.parent->dataset and event.parent->event would be satisfied. added project__unique constraint on name within dataset.