Die Tabellen Benutzer, Rollen und Gruppen hinzugefügt

This commit is contained in:
Peter Schiwy
2024-11-29 10:35:10 +01:00
parent a290bcceb3
commit fdc57ab13a
48 changed files with 771 additions and 267 deletions

View File

@@ -1,2 +1 @@
-- Add down migration script here
DROP TABLE typen;

View File

@@ -1,5 +1,4 @@
-- Add up migration script here
CREATE TABLE IF NOT EXISTS typen (
id SERIAL PRIMARY KEY,
name VARCHAR NOT NULL
id UUID PRIMARY KEY,
typname VARCHAR NOT NULL
);

View File

@@ -1,2 +1 @@
-- Add down migration script here
DROP TABLE hersteller;

View File

@@ -1,5 +1,4 @@
-- Add up migration script here
CREATE TABLE IF NOT EXISTS hersteller (
id SERIAL PRIMARY KEY,
name VARCHAR NOT NULL
id UUID PRIMARY KEY,
herstellername VARCHAR NOT NULL
);

View File

@@ -1,2 +1 @@
-- Add down migration script here
DROP TABLE modelle;

View File

@@ -1,9 +1,16 @@
-- Add up migration script here
CREATE TABLE IF NOT EXISTS modelle (
id SERIAL PRIMARY KEY,
name VARCHAR NOT NULL,
typ_id SERIAL,
hersteller_id SERIAL,
CONSTRAINT fk_typ FOREIGN KEY(typ_id) REFERENCES typen(id) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT fk_hersteller FOREIGN KEY (hersteller_id) REFERENCES hersteller(id) ON DELETE NO ACTION ON UPDATE NO ACTION
id UUID PRIMARY KEY,
modellname VARCHAR NOT NULL,
typ_id UUID,
hersteller_id UUID,
CONSTRAINT fk_typ FOREIGN KEY (typ_id)
REFERENCES typen (id)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT fk_hersteller FOREIGN KEY (hersteller_id)
REFERENCES hersteller (id)
ON DELETE NO ACTION
ON UPDATE NO ACTION
)

View File

@@ -0,0 +1 @@
DROP TABLE gruppen;

View File

@@ -0,0 +1,6 @@
CREATE TABLE IF NOT EXISTS gruppen (
id UUID PRIMARY KEY,
gruppenname VARCHAR NOT NULL,
erstellt_am TIMESTAMP WITH TIME ZONE NOT NULL,
geaendert_am TIMESTAMP WITH TIME ZONE NOT NULL
)

View File

@@ -0,0 +1 @@
DROP TABLE rollen;

View File

@@ -0,0 +1,6 @@
CREATE TABLE IF NOT EXISTS rollen (
id UUID PRIMARY KEY,
rollenname VARCHAR NOT NULL,
erstellt_am TIMESTAMP WITH TIME ZONE NOT NULL,
geaendert_am TIMESTAMP WITH TIME ZONE NOT NULL
)

View File

@@ -0,0 +1 @@
DROP TABLE rollen_gruppen;

View File

@@ -0,0 +1,16 @@
CREATE TABLE IF NOT EXISTS rollen_gruppen (
rolle_id UUID NOT NULL,
gruppe_id UUID NOT NULL,
CONSTRAINT pk_rollen_gruppen PRIMARY KEY (rolle_id, gruppe_id),
CONSTRAINT fk_rollen_gruppen_gruppe FOREIGN KEY (gruppe_id)
REFERENCES gruppen (id) MATCH SIMPLE
ON UPDATE CASCADE
ON DELETE CASCADE,
CONSTRAINT fk_rollen_gruppen_rolle FOREIGN KEY (rolle_id)
REFERENCES rollen (id) MATCH SIMPLE
ON UPDATE CASCADE
ON DELETE CASCADE
)

View File

@@ -0,0 +1 @@
DROP TABLE benutzer;

View File

@@ -0,0 +1,7 @@
CREATE TABLE IF NOT EXISTS benutzer (
id UUID PRIMARY KEY,
kennung VARCHAR NOT NULL,
nachname VARCHAR NOT NULL,
vorname VARCHAR NOT NULL
)

View File

@@ -0,0 +1 @@
DROP TABLE benutzer_gruppen;

View File

@@ -0,0 +1,16 @@
CREATE TABLE IF NOT EXISTS benutzer_gruppen (
benutzer_id UUID NOT NULL,
gruppe_id UUID NOT NULL,
CONSTRAINT pk_benutzer_gruppen PRIMARY KEY (benutzer_id, gruppe_id),
CONSTRAINT fk_benutzer_gruppen_benutzer FOREIGN KEY (benutzer_id)
REFERENCES benutzer (id) MATCH SIMPLE
ON UPDATE CASCADE
ON DELETE CASCADE,
CONSTRAINT fk_benutzer_gruppen_gruppe FOREIGN KEY (gruppe_id)
REFERENCES gruppen (id) MATCH SIMPLE
ON UPDATE CASCADE
ON DELETE CASCADE
)

View File

@@ -0,0 +1 @@
DROP TABLE benutzer_rollen;

View File

@@ -0,0 +1,16 @@
CREATE TABLE IF NOT EXISTS benutzer_rollen (
benutzer_id UUID NOT NULL,
rolle_id UUID NOT NULL,
CONSTRAINT pk_benutzer_rollen PRIMARY KEY (benutzer_id, rolle_id),
CONSTRAINT fk_benutzer_rollen_benutzer FOREIGN KEY (benutzer_id)
REFERENCES benutzer (id) MATCH SIMPLE
ON UPDATE CASCADE
ON DELETE CASCADE,
CONSTRAINT fk_benutzer_rollen_rolle FOREIGN KEY (rolle_id)
REFERENCES rollen (id) MATCH SIMPLE
ON UPDATE CASCADE
ON DELETE CASCADE
)