Skip to content
Snippets Groups Projects
Commit 610a69fc authored by Marc Chakiachvili's avatar Marc Chakiachvili
Browse files

Updated SQL tables script with all updates

parent 9722993e
No related branches found
No related tags found
2 merge requests!347Updated ensembl_ontology schema scripts,!347Updated ensembl_ontology schema scripts
......@@ -21,6 +21,6 @@
-- Added fields to Term and Ontology tables
-- Added columns
ALTER TABLE ontology ADD COLUMN `title` varchar(255) NULL;
ALTER TABLE ontology ADD COLUMN `title` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL;
ALTER TABLE term ADD COLUMN `iri` varchar(1000) NULL;
ALTER TABLE term ADD COLUMN `iri` text NULL;
......@@ -18,15 +18,14 @@
-- The schema for the ensembl_ontology_NN database.
-- ---------------------------------------------------------------------
CREATE TABLE meta (
meta_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
meta_key VARCHAR(64) NOT NULL,
meta_value VARCHAR(128),
species_id INT UNSIGNED DEFAULT NULL,
PRIMARY KEY (meta_id),
UNIQUE INDEX key_value_idx (meta_key, meta_value)
) COLLATE=latin1_swedish_ci ENGINE=MyISAM;
CREATE TABLE `meta` (
`meta_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`meta_key` varchar(64) COLLATE utf8_unicode_ci NOT NULL,
`meta_value` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL,
`species_id` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`meta_id`),
UNIQUE KEY `key_value_idx` (`meta_key`,`meta_value`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
# Add schema type and schema version to the meta table
INSERT INTO meta (meta_key, meta_value) VALUES
......@@ -38,100 +37,98 @@ INSERT INTO meta (meta_key, meta_value)
VALUES ('patch', 'patch_95_96_a.sql|schema_version');
CREATE TABLE ontology (
ontology_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name VARCHAR(64) NOT NULL,
namespace VARCHAR(64) NOT NULL,
data_version VARCHAR(64) DEFAULT NULL,
`title` varchar(255) NULL,
PRIMARY KEY (ontology_id),
UNIQUE INDEX name_namespace_idx (name, namespace)
) COLLATE=latin1_swedish_ci ENGINE=MyISAM;
CREATE TABLE subset (
subset_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name VARCHAR(64) NOT NULL,
definition VARCHAR(128) NOT NULL,
PRIMARY KEY (subset_id),
UNIQUE INDEX name_idx (name)
) COLLATE=latin1_swedish_ci ENGINE=MyISAM;
CREATE TABLE term (
term_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
ontology_id INT UNSIGNED NOT NULL,
subsets TEXT,
accession VARCHAR(64) NOT NULL,
name VARCHAR(255) NOT NULL,
definition TEXT,
is_root INT NOT NULL DEFAULT 0,
is_obsolete INT NOT NULL DEFAULT 0,
`iri` varchar(1000) NULL,
PRIMARY KEY (term_id),
UNIQUE INDEX accession_idx (accession),
UNIQUE INDEX ontology_acc_idx (ontology_id, accession),
INDEX name_idx (name)
) COLLATE=latin1_swedish_ci ENGINE=MyISAM;
CREATE TABLE synonym (
synonym_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
term_id INT UNSIGNED NOT NULL,
name TEXT NOT NULL,
type ENUM('EXACT', 'BROAD', 'NARROW', 'RELATED'),
dbxref VARCHAR(258) NULL,
PRIMARY KEY (synonym_id),
UNIQUE INDEX term_synonym_idx (term_id, synonym_id),
INDEX name_idx (name(50))
) COLLATE=utf8_swedish_ci ENGINE=MyISAM;
CREATE TABLE alt_id (
alt_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
term_id INT UNSIGNED NOT NULL,
accession VARCHAR(64) NOT NULL,
PRIMARY KEY (alt_id),
UNIQUE INDEX term_alt_idx (term_id, alt_id),
INDEX accession_idx (accession(50))
) COLLATE=latin1_swedish_ci ENGINE=MyISAM;
CREATE TABLE relation_type (
relation_type_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name VARCHAR(64) NOT NULL,
PRIMARY KEY (relation_type_id),
UNIQUE INDEX name_idx (name)
) COLLATE=latin1_swedish_ci ENGINE=MyISAM;
CREATE TABLE relation (
relation_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
child_term_id INT UNSIGNED NOT NULL,
parent_term_id INT UNSIGNED NOT NULL,
relation_type_id INT UNSIGNED NOT NULL,
intersection_of TINYINT UNSIGNED NOT NULL DEFAULT 0,
ontology_id INT UNSIGNED NOT NULL,
PRIMARY KEY (relation_id),
UNIQUE INDEX child_parent_idx
(child_term_id, parent_term_id, relation_type_id, intersection_of, ontology_id),
INDEX parent_idx (parent_term_id)
) COLLATE=latin1_swedish_ci ENGINE=MyISAM;
CREATE TABLE closure (
closure_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
child_term_id INT UNSIGNED NOT NULL,
parent_term_id INT UNSIGNED NOT NULL,
subparent_term_id INT UNSIGNED,
distance TINYINT UNSIGNED NOT NULL,
ontology_id INT UNSIGNED NOT NULL,
confident_relationship BOOL NOT NULL DEFAULT 0,
PRIMARY KEY (closure_id),
UNIQUE INDEX child_parent_idx
(child_term_id, parent_term_id, subparent_term_id, ontology_id),
INDEX parent_subparent_idx
(parent_term_id, subparent_term_id)
) COLLATE=latin1_swedish_ci ENGINE=MyISAM;
CREATE TABLE `ontology` (
`ontology_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(64) COLLATE utf8_unicode_ci NOT NULL,
`namespace` varchar(64) COLLATE utf8_unicode_ci NOT NULL,
`data_version` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL,
`title` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`ontology_id`),
UNIQUE KEY `ontology_name_namespace_idx` (`name`,`namespace`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE `subset` (
`subset_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(64) COLLATE utf8_unicode_ci NOT NULL,
`definition` varchar(511) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
PRIMARY KEY (`subset_id`),
UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE `term` (
`term_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`ontology_id` int(10) unsigned NOT NULL,
`subsets` text,
`accession` varchar(64) NOT NULL,
`name` varchar(255) NOT NULL,
`definition` text,
`is_root` int(11) NOT NULL DEFAULT '0',
`is_obsolete` int(11) NOT NULL DEFAULT '0',
`iri` text,
PRIMARY KEY (`term_id`),
UNIQUE KEY `accession` (`accession`),
UNIQUE KEY `term_ontology_acc_idx` (`ontology_id`,`accession`),
KEY `term_name_idx` (`name`(100))
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `synonym` (
`synonym_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`term_id` int(10) unsigned NOT NULL,
`name` text CHARACTER SET utf8 NOT NULL,
`type` enum('EXACT','BROAD','NARROW','RELATED') COLLATE utf8_unicode_ci DEFAULT NULL,
`dbxref` varchar(500) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`synonym_id`),
UNIQUE KEY `synonym_term_idx` (`term_id`,`synonym_id`),
KEY `synonym_name_idx` (`name`(100))
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE `alt_id` (
`alt_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`term_id` int(10) unsigned NOT NULL,
`accession` varchar(64) NOT NULL,
PRIMARY KEY (`alt_id`),
UNIQUE KEY `term_alt_idx` (`term_id`,`alt_id`),
KEY `ix_alt_id_accession` (`accession`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `relation_type` (
`relation_type_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(64) NOT NULL,
PRIMARY KEY (`relation_type_id`),
UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `relation` (
`relation_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`child_term_id` int(10) unsigned NOT NULL,
`parent_term_id` int(10) unsigned NOT NULL,
`relation_type_id` int(10) unsigned NOT NULL,
`intersection_of` tinyint(1) NOT NULL,
`ontology_id` int(10) unsigned NOT NULL,
PRIMARY KEY (`relation_id`),
UNIQUE KEY `child_parent_idx` (`child_term_id`,`parent_term_id`,`relation_type_id`,`intersection_of`,`ontology_id`),
KEY `ix_relation_parent_term_id` (`parent_term_id`),
KEY `ix_relation_relation_type_id` (`relation_type_id`),
KEY `ix_relation_ontology_id` (`ontology_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `closure` (
`closure_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`child_term_id` int(10) unsigned NOT NULL,
`parent_term_id` int(10) unsigned NOT NULL,
`subparent_term_id` int(10) unsigned DEFAULT NULL,
`distance` tinyint(3) unsigned NOT NULL,
`ontology_id` int(10) unsigned NOT NULL,
`confident_relationship` tinyint(1) NOT NULL,
PRIMARY KEY (`closure_id`),
UNIQUE KEY `closure_child_parent_idx` (`child_term_id`,`parent_term_id`,`subparent_term_id`,`ontology_id`),
KEY `ix_closure_subparent_term_id` (`subparent_term_id`),
KEY `ix_closure_ontology_id` (`ontology_id`),
KEY `parent_subparent_idx` (`parent_term_id`,`subparent_term_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- There are additional tables in the released databases called
-- "aux_XX_YY_map". These are created by the "add_subset_maps.pl"
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment