Skip to content
Snippets Groups Projects
Commit ffe3fb80 authored by felmer's avatar felmer
Browse files

SE-170 introducing cascading deletion and new table in datamodel. Version increased to 002

SVN: 13726
parent 70e0af93
No related branches found
No related tags found
No related merge requests found
...@@ -38,7 +38,7 @@ import ch.systemsx.cisd.openbis.plugin.phosphonetx.server.dataaccess.IProteinQue ...@@ -38,7 +38,7 @@ import ch.systemsx.cisd.openbis.plugin.phosphonetx.server.dataaccess.IProteinQue
public class PhosphoNetXDAOFactory implements IPhosphoNetXDAOFactory public class PhosphoNetXDAOFactory implements IPhosphoNetXDAOFactory
{ {
/** Current version of the database. */ /** Current version of the database. */
public static final String DATABASE_VERSION = "001"; public static final String DATABASE_VERSION = "002";
private static final Logger operationLog = private static final Logger operationLog =
LogFactory.getLogger(LogCategory.OPERATION, PhosphoNetXDAOFactory.class); LogFactory.getLogger(LogCategory.OPERATION, PhosphoNetXDAOFactory.class);
......
rtd_phosphonetx/source/sql/postgresql/002/schema-002.png

194 KiB

/* ---------------------------------------------------------------------- */
/* Script generated with: DeZign for Databases v5.2.3 */
/* Target DBMS: PostgreSQL 8 */
/* Project file: schema.dez */
/* Project name: */
/* Author: */
/* Script type: Database creation script */
/* Created on: 2009-12-07 11:03 */
/* Model version: Version 2009-12-07 */
/* ---------------------------------------------------------------------- */
/* ---------------------------------------------------------------------- */
/* Domains */
/* ---------------------------------------------------------------------- */
CREATE DOMAIN CHECKSUM AS CHARACTER VARYING(8);
CREATE DOMAIN CODE AS CHARACTER VARYING(40);
CREATE DOMAIN DESCRIPTION AS CHARACTER VARYING(2000);
CREATE DOMAIN INTEGER_NUMBER AS INTEGER;
CREATE DOMAIN REAL_NUMBER AS DOUBLE PRECISION;
CREATE DOMAIN LONG_SEQUENCE AS TEXT;
CREATE DOMAIN SHORT_DESCRIPTION AS CHARACTER VARYING(200);
CREATE DOMAIN TECH_ID AS BIGINT;
CREATE DOMAIN SHORT_SEQUENCE AS CHARACTER VARYING(1000);
CREATE DOMAIN ACCESSION_NUMBER AS CHARACTER VARYING(256);
CREATE DOMAIN SPECTRUM_REFERENCE AS CHARACTER VARYING(100);
/* ---------------------------------------------------------------------- */
/* Tables */
/* ---------------------------------------------------------------------- */
/* ---------------------------------------------------------------------- */
/* Add table "EXPERIMENTS" */
/* ---------------------------------------------------------------------- */
CREATE TABLE EXPERIMENTS (
ID BIGSERIAL NOT NULL,
PERM_ID CODE NOT NULL,
CONSTRAINT PK_EXPERIMENTS PRIMARY KEY (ID),
CONSTRAINT TUC_EXPERIMENTS_1 UNIQUE (PERM_ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "DATA_SETS" */
/* ---------------------------------------------------------------------- */
CREATE TABLE DATA_SETS (
ID BIGSERIAL NOT NULL,
EXPE_ID TECH_ID NOT NULL,
SAMP_ID TECH_ID,
DB_ID TECH_ID NOT NULL,
PERM_ID CODE NOT NULL,
CONSTRAINT PK_DATA_SETS PRIMARY KEY (ID),
CONSTRAINT TUC_DATA_SETS_1 UNIQUE (PERM_ID)
);
CREATE INDEX IX_FK_DATA_SETS_EXPERIMENTS ON DATA_SETS (EXPE_ID);
CREATE INDEX IX_FK_DATA_SETS_SAMPLES ON DATA_SETS (SAMP_ID);
/* ---------------------------------------------------------------------- */
/* Add table "MODIFICATIONS" */
/* ---------------------------------------------------------------------- */
CREATE TABLE MODIFICATIONS (
ID BIGSERIAL NOT NULL,
MOPE_ID TECH_ID NOT NULL,
POS INTEGER_NUMBER NOT NULL,
MASS REAL_NUMBER NOT NULL,
CONSTRAINT PK_MODIFICATIONS PRIMARY KEY (ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "PEPTIDES" */
/* ---------------------------------------------------------------------- */
CREATE TABLE PEPTIDES (
ID BIGSERIAL NOT NULL,
PROT_ID TECH_ID NOT NULL,
SEQUENCE SHORT_SEQUENCE NOT NULL,
CHARGE INTEGER_NUMBER NOT NULL,
CONSTRAINT PK_PEPTIDES PRIMARY KEY (ID)
);
CREATE INDEX IX_FK_PEPTIDES_PROTEINS ON PEPTIDES (PROT_ID);
/* ---------------------------------------------------------------------- */
/* Add table "PROTEINS" */
/* ---------------------------------------------------------------------- */
CREATE TABLE PROTEINS (
ID BIGSERIAL NOT NULL,
DASE_ID TECH_ID NOT NULL,
PROBABILITY REAL_NUMBER NOT NULL,
CONSTRAINT PK_PROTEINS PRIMARY KEY (ID)
);
CREATE INDEX IDX_PROTEINS_1 ON PROTEINS (DASE_ID);
/* ---------------------------------------------------------------------- */
/* Add table "SAMPLES" */
/* ---------------------------------------------------------------------- */
CREATE TABLE SAMPLES (
ID BIGSERIAL NOT NULL,
PERM_ID CODE NOT NULL,
EXPE_ID TECH_ID NOT NULL,
CONSTRAINT PK_SAMPLES PRIMARY KEY (ID),
CONSTRAINT TUC_SAMPLES_1 UNIQUE (PERM_ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "SEQUENCES" */
/* ---------------------------------------------------------------------- */
CREATE TABLE SEQUENCES (
ID BIGSERIAL NOT NULL,
DB_ID TECH_ID NOT NULL,
PRRE_ID TECH_ID NOT NULL,
AMINO_ACID_SEQUENCE LONG_SEQUENCE NOT NULL,
CHECKSUM CHECKSUM NOT NULL,
CONSTRAINT PK_SEQUENCES PRIMARY KEY (ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "IDENTIFIED_PROTEINS" */
/* ---------------------------------------------------------------------- */
CREATE TABLE IDENTIFIED_PROTEINS (
ID BIGSERIAL NOT NULL,
PROT_ID TECH_ID NOT NULL,
SEQU_ID TECH_ID NOT NULL,
CONSTRAINT PK_IDENTIFIED_PROTEINS PRIMARY KEY (ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "ABUNDANCES" */
/* ---------------------------------------------------------------------- */
CREATE TABLE ABUNDANCES (
ID BIGSERIAL NOT NULL,
PROT_ID TECH_ID NOT NULL,
SAMP_ID TECH_ID NOT NULL,
VALUE REAL_NUMBER NOT NULL,
CONSTRAINT PK_ABUNDANCES PRIMARY KEY (ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "PROBABILITY_FDR_MAPPINGS" */
/* ---------------------------------------------------------------------- */
CREATE TABLE PROBABILITY_FDR_MAPPINGS (
ID BIGSERIAL NOT NULL,
DASE_ID TECH_ID NOT NULL,
PROBABILITY REAL_NUMBER NOT NULL,
FALSE_DISCOVERY_RATE REAL_NUMBER NOT NULL,
CONSTRAINT PK_PROBABILITY_FDR_MAPPINGS PRIMARY KEY (ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "PROTEIN_REFERENCES" */
/* ---------------------------------------------------------------------- */
CREATE TABLE PROTEIN_REFERENCES (
ID BIGSERIAL NOT NULL,
ACCESSION_NUMBER ACCESSION_NUMBER NOT NULL,
DESCRIPTION DESCRIPTION,
CONSTRAINT PK_PROTEIN_REFERENCES PRIMARY KEY (ID),
CONSTRAINT TUC_PROTEIN_REFERENCES_1 UNIQUE (ACCESSION_NUMBER)
);
CREATE INDEX IDX_PROTEIN_REFERENCES_1 ON PROTEIN_REFERENCES (ACCESSION_NUMBER);
/* ---------------------------------------------------------------------- */
/* Add table "DATABASES" */
/* ---------------------------------------------------------------------- */
CREATE TABLE DATABASES (
ID BIGSERIAL NOT NULL,
NAME_AND_VERSION SHORT_DESCRIPTION NOT NULL,
CONSTRAINT PK_DATABASES PRIMARY KEY (ID),
CONSTRAINT TUC_DATABASES_1 UNIQUE (NAME_AND_VERSION)
);
/* ---------------------------------------------------------------------- */
/* Add table "MODIFIED_PEPTIDES" */
/* ---------------------------------------------------------------------- */
CREATE TABLE MODIFIED_PEPTIDES (
ID BIGSERIAL NOT NULL,
PEPT_ID TECH_ID NOT NULL,
NTERM_MASS REAL_NUMBER NOT NULL,
CTERM_MASS REAL_NUMBER NOT NULL,
CONSTRAINT PK_MODIFIED_PEPTIDES PRIMARY KEY (ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "SPECTRUM_REFERENCES" */
/* ---------------------------------------------------------------------- */
CREATE TABLE SPECTRUM_REFERENCES (
ID BIGSERIAL NOT NULL,
PEPT_ID TECH_ID NOT NULL,
REFERENCE SPECTRUM_REFERENCE NOT NULL,
CONSTRAINT PK_SPECTRUM_REFERENCES PRIMARY KEY (ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "MODIFICATION_FRACTIONS" */
/* ---------------------------------------------------------------------- */
CREATE TABLE MODIFICATION_FRACTIONS (
ID BIGSERIAL NOT NULL,
MODI_ID TECH_ID NOT NULL,
SAMP_ID TECH_ID,
FRACTION REAL_NUMBER NOT NULL,
CONSTRAINT PK_MODIFICATION_FRACTIONS PRIMARY KEY (ID)
);
/* ---------------------------------------------------------------------- */
/* Add table "EVENTS" */
/* ---------------------------------------------------------------------- */
CREATE TABLE EVENTS (
LAST_SEEN_DELETION_EVENT_ID TECH_ID NOT NULL
);
/* ---------------------------------------------------------------------- */
/* Foreign key constraints */
/* ---------------------------------------------------------------------- */
ALTER TABLE DATA_SETS ADD CONSTRAINT DA_EX_FK
FOREIGN KEY (EXPE_ID) REFERENCES EXPERIMENTS (ID);
ALTER TABLE DATA_SETS ADD CONSTRAINT DA_SA_FK
FOREIGN KEY (SAMP_ID) REFERENCES SAMPLES (ID);
ALTER TABLE DATA_SETS ADD CONSTRAINT DATABASES_DATA_SETS
FOREIGN KEY (DB_ID) REFERENCES DATABASES (ID);
ALTER TABLE MODIFICATIONS ADD CONSTRAINT MODIFIED_PEPTIDES_MODIFICATIONS
FOREIGN KEY (MOPE_ID) REFERENCES MODIFIED_PEPTIDES (ID) ON DELETE CASCADE;
ALTER TABLE PEPTIDES ADD CONSTRAINT PE_PR_FK
FOREIGN KEY (PROT_ID) REFERENCES PROTEINS (ID) ON DELETE CASCADE;
ALTER TABLE PROTEINS ADD CONSTRAINT DATA_SETS_PROTEINS
FOREIGN KEY (DASE_ID) REFERENCES DATA_SETS (ID) ON DELETE CASCADE;
ALTER TABLE SEQUENCES ADD CONSTRAINT DATABASES_SEQUENCES
FOREIGN KEY (DB_ID) REFERENCES DATABASES (ID);
ALTER TABLE SEQUENCES ADD CONSTRAINT PROTEIN_REFERENCES_SEQUENCES
FOREIGN KEY (PRRE_ID) REFERENCES PROTEIN_REFERENCES (ID);
ALTER TABLE IDENTIFIED_PROTEINS ADD CONSTRAINT PROTEINS_IDENTIFIED_PROTEINS
FOREIGN KEY (PROT_ID) REFERENCES PROTEINS (ID) ON DELETE CASCADE;
ALTER TABLE IDENTIFIED_PROTEINS ADD CONSTRAINT SEQUENCES_IDENTIFIED_PROTEINS
FOREIGN KEY (SEQU_ID) REFERENCES SEQUENCES (ID);
ALTER TABLE ABUNDANCES ADD CONSTRAINT SAMPLES_ABUNDANCES
FOREIGN KEY (SAMP_ID) REFERENCES SAMPLES (ID);
ALTER TABLE ABUNDANCES ADD CONSTRAINT PROTEINS_ABUNDANCES
FOREIGN KEY (PROT_ID) REFERENCES PROTEINS (ID) ON DELETE CASCADE;
ALTER TABLE PROBABILITY_FDR_MAPPINGS ADD CONSTRAINT DATA_SETS_PROBABILITY_FDR_MAPPINGS
FOREIGN KEY (DASE_ID) REFERENCES DATA_SETS (ID) ON DELETE CASCADE;
ALTER TABLE MODIFIED_PEPTIDES ADD CONSTRAINT PEPTIDES_MODIFIED_PEPTIDES
FOREIGN KEY (PEPT_ID) REFERENCES PEPTIDES (ID) ON DELETE CASCADE;
ALTER TABLE SPECTRUM_REFERENCES ADD CONSTRAINT PEPTIDES_SPECTRUM_REFERENCES
FOREIGN KEY (PEPT_ID) REFERENCES PEPTIDES (ID) ON DELETE CASCADE;
ALTER TABLE MODIFICATION_FRACTIONS ADD CONSTRAINT MODIFICATIONS_MODIFICATION_FRACTIONS
FOREIGN KEY (MODI_ID) REFERENCES MODIFICATIONS (ID) ON DELETE CASCADE;
ALTER TABLE MODIFICATION_FRACTIONS ADD CONSTRAINT SAMPLES_MODIFICATION_FRACTIONS
FOREIGN KEY (SAMP_ID) REFERENCES SAMPLES (ID);
CREATE TABLE EVENTS (
LAST_SEEN_DELETION_EVENT_ID TECH_ID NOT NULL
);
ALTER TABLE MODIFICATIONS DROP CONSTRAINT MODIFIED_PEPTIDES_MODIFICATIONS;
ALTER TABLE MODIFICATIONS ADD CONSTRAINT MODIFIED_PEPTIDES_MODIFICATIONS
FOREIGN KEY (MOPE_ID) REFERENCES MODIFIED_PEPTIDES (ID) ON DELETE CASCADE;
ALTER TABLE PEPTIDES DROP CONSTRAINT PE_PR_FK;
ALTER TABLE PEPTIDES ADD CONSTRAINT PE_PR_FK
FOREIGN KEY (PROT_ID) REFERENCES PROTEINS (ID) ON DELETE CASCADE;
ALTER TABLE PROTEINS DROP CONSTRAINT DATA_SETS_PROTEINS;
ALTER TABLE PROTEINS ADD CONSTRAINT DATA_SETS_PROTEINS
FOREIGN KEY (DASE_ID) REFERENCES DATA_SETS (ID) ON DELETE CASCADE;
ALTER TABLE IDENTIFIED_PROTEINS DROP CONSTRAINT PROTEINS_IDENTIFIED_PROTEINS;
ALTER TABLE IDENTIFIED_PROTEINS ADD CONSTRAINT PROTEINS_IDENTIFIED_PROTEINS
FOREIGN KEY (PROT_ID) REFERENCES PROTEINS (ID) ON DELETE CASCADE;
ALTER TABLE ABUNDANCES DROP CONSTRAINT PROTEINS_ABUNDANCES;
ALTER TABLE ABUNDANCES ADD CONSTRAINT PROTEINS_ABUNDANCES
FOREIGN KEY (PROT_ID) REFERENCES PROTEINS (ID) ON DELETE CASCADE;
ALTER TABLE PROBABILITY_FDR_MAPPINGS DROP CONSTRAINT DATA_SETS_PROBABILITY_FDR_MAPPINGS;
ALTER TABLE PROBABILITY_FDR_MAPPINGS ADD CONSTRAINT DATA_SETS_PROBABILITY_FDR_MAPPINGS
FOREIGN KEY (DASE_ID) REFERENCES DATA_SETS (ID) ON DELETE CASCADE;
ALTER TABLE MODIFIED_PEPTIDES DROP CONSTRAINT PEPTIDES_MODIFIED_PEPTIDES;
ALTER TABLE MODIFIED_PEPTIDES ADD CONSTRAINT PEPTIDES_MODIFIED_PEPTIDES
FOREIGN KEY (PEPT_ID) REFERENCES PEPTIDES (ID) ON DELETE CASCADE;
ALTER TABLE SPECTRUM_REFERENCES DROP CONSTRAINT PEPTIDES_SPECTRUM_REFERENCES;
ALTER TABLE SPECTRUM_REFERENCES ADD CONSTRAINT PEPTIDES_SPECTRUM_REFERENCES
FOREIGN KEY (PEPT_ID) REFERENCES PEPTIDES (ID) ON DELETE CASCADE;
ALTER TABLE MODIFICATION_FRACTIONS DROP CONSTRAINT MODIFICATIONS_MODIFICATION_FRACTIONS;
ALTER TABLE MODIFICATION_FRACTIONS ADD CONSTRAINT MODIFICATIONS_MODIFICATION_FRACTIONS
FOREIGN KEY (MODI_ID) REFERENCES MODIFICATIONS (ID) ON DELETE CASCADE;
\ No newline at end of file
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment