--
-- PostgreSQL database dump
--

-- Dumped from database version 15.4 (Debian 15.4-1.pgdg120+1)
-- Dumped by pg_dump version 15.4 (Debian 15.4-1.pgdg120+1)

SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;

SET default_tablespace = '';

SET default_table_access_method = heap;

--
-- Name: abteilung; Type: TABLE; Schema: public; Owner: anguser
--

CREATE TABLE public.abteilung (
    abtnr integer NOT NULL,
    name character varying(20)
);


ALTER TABLE public.abteilung OWNER TO anguser;

--
-- Name: abteilungsleitung; Type: TABLE; Schema: public; Owner: anguser
--

CREATE TABLE public.abteilungsleitung (
    abtnr integer NOT NULL,
    abtchef integer NOT NULL
);


ALTER TABLE public.abteilungsleitung OWNER TO anguser;

--
-- Name: angestellter; Type: TABLE; Schema: public; Owner: anguser
--

CREATE TABLE public.angestellter (
    persnr integer NOT NULL,
    name character varying(20) NOT NULL,
    tel integer,
    salaer numeric(7,2) NOT NULL,
    chef integer,
    abtnr integer NOT NULL,
    wohnort character varying(20),
    eintrittsdatum date DEFAULT CURRENT_DATE,
    bonus numeric(7,2) DEFAULT 0
);


ALTER TABLE public.angestellter OWNER TO anguser;

--
-- Name: projekt; Type: TABLE; Schema: public; Owner: anguser
--

CREATE TABLE public.projekt (
    projnr integer NOT NULL,
    bezeichnung character(20),
    startzeit date,
    dauer integer,
    aufwand integer,
    projleiter integer
);


ALTER TABLE public.projekt OWNER TO anguser;

--
-- Name: projektzuteilung; Type: TABLE; Schema: public; Owner: anguser
--

CREATE TABLE public.projektzuteilung (
    persnr integer NOT NULL,
    projnr integer NOT NULL,
    zeitanteil integer NOT NULL,
    startzeit date,
    dauer integer
);


ALTER TABLE public.projektzuteilung OWNER TO anguser;

--
-- Data for Name: abteilung; Type: TABLE DATA; Schema: public; Owner: anguser
--

INSERT INTO public.abteilung VALUES (1, 'Verkauf');
INSERT INTO public.abteilung VALUES (2, 'Marketing');
INSERT INTO public.abteilung VALUES (3, 'Entwicklung');
INSERT INTO public.abteilung VALUES (4, 'Finanzen');
INSERT INTO public.abteilung VALUES (5, 'QS');


--
-- Data for Name: abteilungsleitung; Type: TABLE DATA; Schema: public; Owner: anguser
--

INSERT INTO public.abteilungsleitung VALUES (1, 1001);
INSERT INTO public.abteilungsleitung VALUES (2, 1002);
INSERT INTO public.abteilungsleitung VALUES (3, 1010);
INSERT INTO public.abteilungsleitung VALUES (4, 3000);


--
-- Data for Name: angestellter; Type: TABLE DATA; Schema: public; Owner: anguser
--

INSERT INTO public.angestellter VALUES (1001, 'Marxer, Markus', 234, 10580.00, NULL, 1, 'Luzern', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (1002, 'Widmer, Anna', 301, 12010.00, NULL, 2, 'Adligenswil', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (1010, 'Steiner, Hans', 409, 10867.00, NULL, 3, 'Hitzkirch', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (1019, 'Affolter, Vreni', 233, 4123.00, 1001, 1, 'Zürich', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (1100, 'Widmer, Karl', 450, 7500.00, 1010, 3, 'Emmen', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (1123, 'Meier, Franz', 240, 9765.00, 1001, 1, 'Zug', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2098, 'Zürcher, Hedi', 249, 10019.00, 1001, 1, 'Horw', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2109, 'Heiniger, Urs', 345, 4098.00, 1002, 2, 'Luzern', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2298, 'Pauli, Monika', 478, 5089.00, 1010, 3, 'Luzern', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2345, 'Becker, Fritz', 310, 6346.00, 1002, 2, 'Hochdorf', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2567, 'Ammann, Fritz', 467, 7890.00, 1010, 3, 'Baar', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2601, 'Wehrli, Anton', NULL, 5980.00, 2567, 3, 'Luzern', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2666, 'Beeler, Hans', NULL, 3780.00, 2567, 3, 'Rotkreuz', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2701, 'Graber, Berta', 451, 4590.00, 1100, 3, 'Sursee', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (3000, 'Aarburg, Werner', 400, 9000.00, 1100, 4, 'Abtwil', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (3019, 'Kern, Veronika', 401, 4800.00, 3000, 3, 'Sins', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (3333, 'Wernli, Peter', 112, 8978.00, 1001, 1, 'Luzern', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (3338, 'Kramer, Luise', NULL, 4000.00, 3000, 3, 'Luzern', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (4000, 'Rey, Herbert', 480, 15000.00, NULL, 4, 'Adligenswil', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (4010, 'Danuser, Vreni', 481, 5100.00, 4000, 4, 'Luzern', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2000, 'Schnell, Marie', 601, 5100.00, 4000, 4, 'Luzern', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2010, 'Gschwind, Fritz', 602, 5900.00, 4000, 4, 'Luzern', '2023-09-10', 0.00);
INSERT INTO public.angestellter VALUES (2020, 'Test, Hans', 602, 5900.00, 4000, 4, 'Luzern', '2023-09-10', 0.00);


--
-- Data for Name: projekt; Type: TABLE DATA; Schema: public; Owner: anguser
--

INSERT INTO public.projekt VALUES (25, 'Saturn              ', '1994-01-01', 30, 120, 1001);
INSERT INTO public.projekt VALUES (26, 'Mars                ', '1992-12-01', 500, 1000, 1100);
INSERT INTO public.projekt VALUES (27, 'Uranus              ', NULL, NULL, NULL, 1100);
INSERT INTO public.projekt VALUES (30, 'Jupiter             ', '1993-02-12', 10, 50, 1001);


--
-- Data for Name: projektzuteilung; Type: TABLE DATA; Schema: public; Owner: anguser
--

INSERT INTO public.projektzuteilung VALUES (1001, 26, 30, '1992-12-01', 250);
INSERT INTO public.projektzuteilung VALUES (1001, 27, 30, NULL, NULL);
INSERT INTO public.projektzuteilung VALUES (1001, 30, 10, '1993-02-12', 2);
INSERT INTO public.projektzuteilung VALUES (1019, 25, 90, '1994-01-01', 15);
INSERT INTO public.projektzuteilung VALUES (1100, 26, 50, '1992-12-01', 390);
INSERT INTO public.projektzuteilung VALUES (1123, 25, 50, '1994-01-01', 30);
INSERT INTO public.projektzuteilung VALUES (1123, 30, 90, NULL, NULL);
INSERT INTO public.projektzuteilung VALUES (2098, 26, 20, NULL, 500);
INSERT INTO public.projektzuteilung VALUES (2098, 27, 31, NULL, NULL);
INSERT INTO public.projektzuteilung VALUES (2298, 26, 89, '1992-12-05', 500);
INSERT INTO public.projektzuteilung VALUES (2601, 25, 30, '1994-11-01', 8);
INSERT INTO public.projektzuteilung VALUES (2601, 26, 40, '1992-12-05', 500);
INSERT INTO public.projektzuteilung VALUES (2601, 30, 40, '1993-02-12', NULL);
INSERT INTO public.projektzuteilung VALUES (2701, 26, 90, '1993-01-27', 330);


--
-- Name: abteilung abteilung_pkey; Type: CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.abteilung
    ADD CONSTRAINT abteilung_pkey PRIMARY KEY (abtnr);


--
-- Name: abteilungsleitung abteilungsleitung_abtchef_key; Type: CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.abteilungsleitung
    ADD CONSTRAINT abteilungsleitung_abtchef_key UNIQUE (abtchef);


--
-- Name: abteilungsleitung abteilungsleitung_pkey; Type: CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.abteilungsleitung
    ADD CONSTRAINT abteilungsleitung_pkey PRIMARY KEY (abtnr);


--
-- Name: angestellter angestellter_pkey; Type: CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.angestellter
    ADD CONSTRAINT angestellter_pkey PRIMARY KEY (persnr);


--
-- Name: projekt projekt_pkey; Type: CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.projekt
    ADD CONSTRAINT projekt_pkey PRIMARY KEY (projnr);


--
-- Name: projektzuteilung projektzuteilung_pkey; Type: CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.projektzuteilung
    ADD CONSTRAINT projektzuteilung_pkey PRIMARY KEY (persnr, projnr);


--
-- Name: abteilungsleitung fk_abtl_abt; Type: FK CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.abteilungsleitung
    ADD CONSTRAINT fk_abtl_abt FOREIGN KEY (abtnr) REFERENCES public.abteilung(abtnr) ON DELETE CASCADE;


--
-- Name: abteilungsleitung fk_abtl_ang; Type: FK CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.abteilungsleitung
    ADD CONSTRAINT fk_abtl_ang FOREIGN KEY (abtchef) REFERENCES public.angestellter(persnr) ON DELETE CASCADE;


--
-- Name: angestellter fk_ang_abt; Type: FK CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.angestellter
    ADD CONSTRAINT fk_ang_abt FOREIGN KEY (abtnr) REFERENCES public.abteilung(abtnr);


--
-- Name: angestellter fk_ang_ang; Type: FK CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.angestellter
    ADD CONSTRAINT fk_ang_ang FOREIGN KEY (chef) REFERENCES public.angestellter(persnr);


--
-- Name: projekt fk_proj_ang; Type: FK CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.projekt
    ADD CONSTRAINT fk_proj_ang FOREIGN KEY (projleiter) REFERENCES public.angestellter(persnr);


--
-- Name: projektzuteilung fk_projz_ang; Type: FK CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.projektzuteilung
    ADD CONSTRAINT fk_projz_ang FOREIGN KEY (persnr) REFERENCES public.angestellter(persnr) ON DELETE CASCADE;


--
-- Name: projektzuteilung fk_projz_proj; Type: FK CONSTRAINT; Schema: public; Owner: anguser
--

ALTER TABLE ONLY public.projektzuteilung
    ADD CONSTRAINT fk_projz_proj FOREIGN KEY (projnr) REFERENCES public.projekt(projnr) ON DELETE CASCADE;


--
-- PostgreSQL database dump complete
--

