SAE 2. Lehrjahr der Fachinformatiker

Skripte und Notizen für das 2. Lehrjahr der Fachinformatiker von Herrn Vöhringer an der GSVS

View on GitHub

Einleitung

Dieses Skript ist von Herrn Vöhringer für den SAE Unterricht im 2. Lehrjahr der Fachinformatiker an der Gewerbreschule Villingen-Schwenningen.

Es ist eine Ergänzung zum Unterricht und gleichzeitig eine kompakte Zusammenfassung für Klassenarbeiten und Prüfungen, ist aber in keinster Weise vollständig. Es basiert auf der Warenautomat-Datenbank.

Die Datenbank bildet einen Verkaufsautomaten-Betrieb ab. Zentrales Element sind die Verkaufsautomaten, die an verschiedenen Standorten stehen und von Mitarbeitern betreut werden. In jedem Automaten befinden sich ein Inventar aus Produkten, die von Lieferanten eingekauft werden.

Überblick über die Warenautomat-Datenbank

    erDiagram
        STANDORT ||--|{ AUTOMAT : hat
        LIEFERANT ||--|{ PRODUKT : liefert
        AUTOMAT ||--o{ KARTENTRANSAKTION : erzeugt

        AUTOMAT ||--o{ AUTOMAT_MITARBEITER : hat_zuordnung
        MITARBEITER ||--o{ AUTOMAT_MITARBEITER : ist_zugeordnet

        AUTOMAT ||--o{ INVENTAR : enthaelt
        PRODUKT ||--o{ INVENTAR : ist_im_bestand

        STANDORT {
            BIGINT standort_id PK
            VARCHAR bezeichnung
            VARCHAR strasse
            VARCHAR hausnummer
            VARCHAR plz
            VARCHAR ort
            VARCHAR land
            BOOLEAN aktiv
        }

        AUTOMAT {
            BIGINT automat_id PK
            VARCHAR seriennummer
            VARCHAR modell
            BIGINT standort_id FK
            DATE inbetriebnahme
            VARCHAR status
        }

        MITARBEITER {
            BIGINT mitarbeiter_id PK
            VARCHAR personalnummer
            VARCHAR vorname
            VARCHAR nachname
            VARCHAR email
            VARCHAR telefon
            BOOLEAN aktiv
        }

        AUTOMAT_MITARBEITER {
            BIGINT automat_id PK, FK
            BIGINT mitarbeiter_id PK, FK
            VARCHAR rolle
        }

        LIEFERANT {
            BIGINT lieferant_id PK
            VARCHAR name
            VARCHAR ansprechpartner
            VARCHAR email
            VARCHAR telefon
            BOOLEAN aktiv
        }

        PRODUKT {
            BIGINT produkt_id PK
            VARCHAR sku
            VARCHAR name
            VARCHAR kategorie
            BIGINT lieferant_id FK
            NUMERIC preis_eur
            BOOLEAN aktiv
        }

        INVENTAR {
            BIGINT automat_id PK, FK
            BIGINT produkt_id PK, FK
            VARCHAR fachnummer
            INTEGER max_bestand
            INTEGER aktueller_bestand
            INTEGER mindestbestand
        }

        KARTENTRANSAKTION {
            BIGINT kartentransaktion_id PK
            BIGINT automat_id FK
            NUMERIC betrag_eur
            CHAR waehrung
            VARCHAR referenz
            VARCHAR acquirer
            VARCHAR terminal_id
            VARCHAR kartentyp
            VARCHAR masked_pan
            VARCHAR autorisierungscode
            VARCHAR transaktionsstatus
            TIMESTAMP transaktion_am
        }

Das Diagramm zeigt die wichtigsten Beziehungen: Ein Standort kann mehrere Automaten haben, ein Lieferant kann mehrere Produkte liefern, und Automaten sowie Mitarbeiter oder Produkte werden über Zwischentabellen bzw. Fremdschlüssel verbunden.