From dd565d18711c4defd7248b2722366977f648de5d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sabine=20Schr=C3=B6der?= <s.schroeder@fz-juelich.de>
Date: Fri, 9 Oct 2020 17:23:43 +0000
Subject: [PATCH] #17: Update db_changes.psql: create table data_archive (as a
 schema copy from table data)

---
 db_changes.psql | 33 ++++++++++++++++++++++++++++++++-
 1 file changed, 32 insertions(+), 1 deletion(-)

diff --git a/db_changes.psql b/db_changes.psql
index 1c35f84..fdfe649 100644
--- a/db_changes.psql
+++ b/db_changes.psql
@@ -52,4 +52,35 @@ ALTER TABLE stationmeta_core
 -- https://gitlab.version.fz-juelich.de/toar/toardb_fastapi/-/issues/7#note_61173
 ALTER TABLE stationmeta_annotations
     ALTER COLUMN kind SET DEFAULT 0,
-    ADD CONSTRAINT stationmeta_annotations_kind_fk_ak_vocabulary_enum_val FOREIGN KEY(kind) REFERENCES ak_vocabulary(enum_val);
\ No newline at end of file
+    ADD CONSTRAINT stationmeta_annotations_kind_fk_ak_vocabulary_enum_val FOREIGN KEY(kind) REFERENCES ak_vocabulary(enum_val);
+
+-- https://gitlab.version.fz-juelich.de/toar/toardb_fastapi/-/issues/17
+CREATE TABLE public.data_archive (
+    datetime timestamp with time zone NOT NULL,
+    value double precision NOT NULL,
+    flags integer NOT NULL,
+    timeseries_id integer NOT NULL,
+    version character(28) DEFAULT '000001.000000.00000000000000'::bpchar NOT NULL,
+    CONSTRAINT data_archive_flags_check CHECK ((flags >= 0))
+);
+
+ALTER TABLE ONLY public.data_archive
+    ADD CONSTRAINT data_archive_pkey PRIMARY KEY (timeseries_id, datetime);
+
+ALTER TABLE ONLY public.data_archive
+    ADD CONSTRAINT data_archive_timeseries_id_datetime_uniq UNIQUE (timeseries_id, datetime);
+
+CREATE INDEX data_archive_datetime ON public.data_archive USING btree (datetime);
+
+CREATE INDEX data_archive_timeseries_id ON public.data_archive USING btree (timeseries_id);
+
+CREATE INDEX data_archive_value_idx ON public.data_archive USING btree (value);
+
+ALTER TABLE ONLY public.data_archive
+    ADD CONSTRAINT data_archive_flags_fk_df_vocabulary_enum_val FOREIGN KEY (flags) REFERENCES public.df_vocabulary(enum_val);
+
+ALTER TABLE ONLY public.data_archive
+    ADD CONSTRAINT data_archive_timeseries_id_fk_timeseries_id FOREIGN KEY (timeseries_id) REFERENCES public.timeseries(id) DEFERRABLE INITIALLY DEFERRED;
+
+GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.data_archive TO toarv2_rw;
+GRANT SELECT,INSERT,UPDATE ON TABLE public.data_archive TO toaruser;
\ No newline at end of file
-- 
GitLab