Mercurial > dive4elements > river
diff backend/doc/schema/oracle.sql @ 7352:c6825778de1f
Merged double-precision branch.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Wed, 16 Oct 2013 13:03:13 +0200 |
parents | 28748bb1b676 |
children | 44a9233c62eb |
line wrap: on
line diff
--- a/backend/doc/schema/oracle.sql Wed Oct 16 12:39:33 2013 +0200 +++ b/backend/doc/schema/oracle.sql Wed Oct 16 13:03:13 2013 +0200 @@ -27,17 +27,18 @@ CREATE TABLE attributes ( id NUMBER(38,0) NOT NULL, - value VARCHAR2(255) NOT NULL UNIQUE, + value VARCHAR2(255) UNIQUE, primary key (id) ); - +-- value can not be NOT NULL in Oracle: +-- '' is needed here and silently converted to NULL in Oracle -- CROSS_SECTION_LINES CREATE SEQUENCE CROSS_SECTION_LINES_ID_SEQ; CREATE TABLE cross_section_lines ( id NUMBER(38,0) NOT NULL, - km NUMBER(38,2) NOT NULL, + km NUMBER(38,5) NOT NULL, cross_section_id NUMBER(38,0) NOT NULL, PRIMARY KEY (id), UNIQUE (km, cross_section_id) @@ -53,7 +54,7 @@ x NUMBER(38,2) NOT NULL, y NUMBER(38,2) NOT NULL, cross_section_line_id NUMBER(38,0) NOT NULL, - PRIMARY KEY (id), + PRIMARY KEY (id) ); @@ -94,7 +95,7 @@ id NUMBER(38,0) NOT NULL, description VARCHAR2(255) NOT NULL, bfg_id VARCHAR2(50), - kind NUMBER(38,0) NOT NULL DEFAULT 0, + kind NUMBER(38,0) DEFAULT 0 NOT NULL, gauge_id NUMBER(38,0) NOT NULL, time_interval_id NUMBER(38,0), PRIMARY KEY (id), @@ -121,9 +122,9 @@ aeo NUMBER(38,2) NOT NULL, datum NUMBER(38,2) NOT NULL, name VARCHAR2(255) NOT NULL, - station NUMBER(38,2) NOT NULL, + station NUMBER(38,4) NOT NULL, official_number NUMBER(38,0), - range_id NUMBER(38,0) NOT NULL, + range_id NUMBER(38,0), -- TODO: remove river id here because range_id references river already river_id NUMBER(38,0) NOT NULL, PRIMARY KEY (id), @@ -215,8 +216,6 @@ gauge_id NUMBER(38,0) NOT NULL, named_value_id NUMBER(38,0) NOT NULL, time_interval_id NUMBER(38,0), - - -- TODO: better checks UNIQUE (gauge_id, named_value_id, time_interval_id), PRIMARY KEY (id) ); @@ -252,7 +251,8 @@ b NUMBER(38,10), river_id NUMBER(38,0), UNIQUE (river_id, a, b), - PRIMARY KEY (id) + PRIMARY KEY (id), + CHECK (a < b) ); @@ -263,7 +263,7 @@ CREATE TABLE rivers ( id NUMBER(38,0) NOT NULL, official_number NUMBER(38,0), - km_up NUMBER(38,0) NOT NULL DEFAULT 0, + km_up NUMBER(38,0) DEFAULT 0 NOT NULL, name VARCHAR2(255) NOT NULL UNIQUE, wst_unit_id NUMBER(38,0) NOT NULL, PRIMARY KEY (id) @@ -325,7 +325,8 @@ id NUMBER(38,0) NOT NULL, description VARCHAR2(255), name VARCHAR2(255) NOT NULL, - position NUMBER(38,0) NOT NULL DEFAULT 0, + source VARCHAR(256), + position NUMBER(38,0) DEFAULT 0 NOT NULL, time_interval_id NUMBER(38,0), wst_id NUMBER(38,0) NOT NULL, UNIQUE (wst_id, name), @@ -416,7 +417,7 @@ ALTER TABLE wst_column_q_ranges ADD CONSTRAINT cWstColumnQRangesWstQRanges FOREIGN KEY (wst_q_range_id) REFERENCES wst_q_ranges ON DELETE CASCADE; ALTER TABLE wst_columns ADD CONSTRAINT cWstColumnsWsts FOREIGN KEY (wst_id) REFERENCES wsts ON DELETE CASCADE; ALTER TABLE wst_column_values ADD CONSTRAINT cWstColumnValuesWstColumns FOREIGN KEY (wst_column_id) REFERENCES wst_columns ON DELETE CASCADE; -ALTER TABLE wst_q_ranges ADD CONSTRAINT cWstQRangesRanges FOREIGN KEY (range_id) REFERENCES RANGES ON LETE CASCADE; +ALTER TABLE wst_q_ranges ADD CONSTRAINT cWstQRangesRanges FOREIGN KEY (range_id) REFERENCES RANGES ON DELETE CASCADE; ALTER TABLE wsts ADD CONSTRAINT cWstsRivers FOREIGN KEY (river_id) REFERENCES rivers ON DELETE CASCADE; ALTER TABLE wsts ADD CONSTRAINT cWstsWstKinds FOREIGN KEY (kind) REFERENCES wst_kinds;