Update base.sql

This commit is contained in:
2022-11-15 19:15:02 +01:00
parent c728fa700a
commit e2c9d299b8

View File

@ -32,6 +32,8 @@ CREATE TABLE AT_gemeinde (
CONSTRAINT pk_AT_gemeinde PRIMARY KEY (gkz),
CONSTRAINT fk_AT_gemeinde_AT_bundesland FOREIGN KEY (land_id) REFERENCES AT_bundesland (id)
ON UPDATE CASCADE
ON DELETE RESTRICT
) STRICT;
CREATE TABLE AT_ort (
@ -41,15 +43,78 @@ CREATE TABLE AT_ort (
CONSTRAINT pk_AT_ort PRIMARY KEY (okz),
CONSTRAINT fk_AT_ort_AT_gemeinde FOREIGN KEY (gkz) REFERENCES AT_gemeinde (gkz)
ON UPDATE CASCADE
ON DELETE RESTRICT
) STRICT;
CREATE TABLE AT_plz (
plz INTEGER NOT NULL CHECK(plz >= 1000 AND plz <= 9999),
okz INTEGER NOT NULL,
id INTEGER NOT NULL CHECK(id = plz * 100000 + okz),
name TEXT NOT NULL,
CONSTRAINT pk_AT_plz PRIMARY KEY (plz, okz),
CONSTRAINT sk_AT_plz_id UNIQUE (id),
CONSTRAINT fk_AT_plz_AT_ort FOREIGN KEY (okz) REFERENCES AT_ort (okz)
ON UPDATE CASCADE
ON DELETE RESTRICT
) STRICT;
CREATE TABLE origin (
id TEXT NOT NULL CHECK(LENGTH(id) = 4),
parent_id TEXT,
name TEXT NOT NULL,
land_id INTEGER,
CONSTRAINT pk_origin PRIMARY KEY (id),
CONSTRAINT sk_origin_name UNIQUE (name),
CONSTRAINT fk_origin_origin FOREIGN KEY (parent_id) REFERENCES origin (id)
ON UPDATE CASCADE
ON DELETE RESTRICT,
CONSTRAINT fk_origin_AT_bundesland FOREIGN KEY (land_id) REFERENCES AT_bundesland (id)
ON UPDATE CASCADE
ON DELETE RESTRICT
) STRICT;
-- Weinbauland
--CREATE TABLE wbl() STRICT;
-- Weinbauregion
--CREATE TABLE wbr() STRICT;
-- Generisches Weinbaugebiet
--CREATE TABLE wbgg() STRICT;
-- Spezifisches Weinbaugebeit
--CREATE TABLE wbgs() STRICT;
-- Großlage
CREATE TABLE wbgl (
id INTEGER NOT NULL,
CONSTRAINT pk_wbgl PRIMARY KEY (id)
) STRICT;
-- Weinbaugemeinde
CREATE TABLE wbgem (
id INTEGER NOT NULL,
CONSTRAINT pk_wbgem PRIMARY KEY (id)
) STRICT;
-- Weinbaukatastralgemeinde
CREATE TABLE wbkg (
id INTEGER NOT NULL,
CONSTRAINT pk_wbkg PRIMARY KEY (id)
) STRICT;
-- Ried
CREATE TABLE wbrd (
id INTEGER NOT NULL,
CONSTRAINT pk_wbrd PRIMARY KEY (id)
) STRICT;
@ -70,3 +135,36 @@ INSERT INTO AT_bundesland VALUES
(7, 'T', NULL, 'Tirol'),
(8, 'V', 'Vbg.', 'Vorarlberg'),
(9, 'W', NULL, 'Wien');
INSERT INTO origin VALUES
('AUSL', NULL , 'Ausland', NULL),
('EUXX', NULL , 'Verschnitt von mehreren Weinen der EU', NULL),
('OEST', NULL , 'Österreich', NULL),
('BLXX', 'OEST', 'Bergland', NULL),
('SLXX', 'OEST', 'Steirerland', NULL),
('WLXX', 'OEST', 'Weinland', NULL),
('BLKA', 'BLXX', 'Kärnten', 2),
('BLOO', 'BLXX', 'Oberösterreich', 4),
('BLSB', 'BLXX', 'Salzburg', 5),
('BLTI', 'BLXX', 'Tirol', 7),
('BLVO', 'BLXX', 'Vorarlberg', 8),
('SLST', 'SLXX', 'Steiermark', 6),
('SLSS', 'SLST', 'Südsteiermark', NULL),
('SLVL', 'SLST', 'Vulkanland Steiermark', NULL),
('SLWS', 'SLST', 'Weststeiermark', NULL),
('WIEN', 'WLXX', 'Wien', 9),
('WLNO', 'WLXX', 'Niederösterreich', 3),
('WLBL', 'WLXX', 'Burgenland', 1),
('WLCA', 'WLNO', 'Carnuntum', NULL),
('WLKA', 'WLNO', 'Kamptal', NULL),
('WLKT', 'WLNO', 'Kremstal', NULL),
('WLTH', 'WLNO', 'Thermenregion', NULL),
('WLTT', 'WLNO', 'Traisental', NULL),
('WLWA', 'WLNO', 'Wachau', NULL),
('WLWG', 'WLNO', 'Wagram', NULL),
('WLWV', 'WLNO', 'Weinviertel', NULL),
('WLNS', 'WLBL', 'Neusiedlersee', NULL),
('WLLB', 'WLBL', 'Leithaberg', NULL),
('WLRO', 'WLBL', 'Rosalia', NULL),
('WLMB', 'WLBL', 'Mittelburgenland', NULL),
('WLEB', 'WLBL', 'Eisenberg', NULL);