aboutsummaryrefslogtreecommitdiff
path: root/Info/10
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2025-11-25 17:45:07 +0100
committerFlorian Fischer <florian.fischer@muhq.space>2025-11-25 17:45:07 +0100
commit07ce7ac1514c97883bb5d519ed5db3ac2476db44 (patch)
tree36ae5580bfc837e508284fa748af0eaa1be7fddb /Info/10
parent9d74995f4b4328cc95097e4f86253b8a4adb51a0 (diff)
downloadunterricht-07ce7ac1514c97883bb5d519ed5db3ac2476db44.tar.gz
unterricht-07ce7ac1514c97883bb5d519ed5db3ac2476db44.zip
add second version of the 10th grade exam
Diffstat (limited to 'Info/10')
-rw-r--r--Info/10/1/Aufgaben/joins_social_media.tex35
-rw-r--r--Info/10/1/Aufgaben/tabellenschema_filme_n_m.tex46
-rw-r--r--Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/.gitignore1
l---------Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/joins_social_media.tex1
l---------Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/klassendiagramm_hoghwarts.tex1
l---------Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/tabellenschema_filme_n_m.tex1
-rw-r--r--Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/README.md18
-rw-r--r--Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/_test.tex30
-rw-r--r--Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_lehrer.tex7
-rw-r--r--Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_loesung.tex7
-rw-r--r--Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_schueler.tex7
11 files changed, 154 insertions, 0 deletions
diff --git a/Info/10/1/Aufgaben/joins_social_media.tex b/Info/10/1/Aufgaben/joins_social_media.tex
new file mode 100644
index 00000000..d86a16e7
--- /dev/null
+++ b/Info/10/1/Aufgaben/joins_social_media.tex
@@ -0,0 +1,35 @@
+\renewcommand{\Verteilung}{5+4}
+\begin{Aufg}[Joins]
+Ein soziales Netzwerk verwaltet alle User, Freundschaftsbeziehungen, sowie alle Posts in einer Datenbank mit folgenden Tabellen: \\
+\texttt{Nutzer[\underline{nutzername}: TEXT, vorname: TEXT, nachname: TEXT, alter: DATE]} \\
+\texttt{Freundschaft[\underline{\dashuline{freund1: TEXT}, \dashuline{freund2: TEXT}}]} \\
+\texttt{Posts[\underline{id: INTEGER}, inhalt: TEXT, datum: DATE, \dashuline{nutzer: TEXT}]} \\
+
+\begin{enumerate}[a)]
+\item Formuliere eine SQL-Abfrage, die die Namen aller befreundeten Nutzer liefert.
+\item Formuliere eine SQL-Abfrage, die die \textbf{Anzahl} der Posts von Freunden des Nutzers \textbf{rezo} ausgiebt.
+\end{enumerate}
+\end{Aufg}
+
+\begin{Lsg}
+\begin{enumerate}[a)]
+\item
+\begin{minted}{sql}
+SELECT n1.name, n2.name
+FROM Nutzer AS n1, Nutzer AS n2, Freundschaft
+WHERE f1.nutzername = Feundschaft.freund1
+ AND n2.nutzername = Freundschaft.freund2;
+\end{minted}
+\BE{1} Select \BE{2} From \BE{2} Where
+\item
+\begin{minted}{sql}
+SELECT Count(Posts.id)
+FROM Nutzer AS n1, Nutzer AS n2, Freundschaft, Posts
+WHERE n1.nutzername = Freundschaft.freund1
+ AND n2.nutzername = Freundschaft.freund2
+ AND n1.nutzername = "rezo"
+ AND n2.nutzername = Posts.nutzer;
+\end{minted}
+\BE{1} Select+Count \BE{1} From+Posts \BE{2} Where Rezo | 1,n Join
+\end{enumerate}
+\end{Lsg}
diff --git a/Info/10/1/Aufgaben/tabellenschema_filme_n_m.tex b/Info/10/1/Aufgaben/tabellenschema_filme_n_m.tex
new file mode 100644
index 00000000..05fa51e0
--- /dev/null
+++ b/Info/10/1/Aufgaben/tabellenschema_filme_n_m.tex
@@ -0,0 +1,46 @@
+\renewcommand{\Verteilung}{7+3}
+\begin{Aufg}[Tabellenschema]
+Für eine Streaming-Plattform soll nach folgendem Klassendiagramm eine relationale Datenbank erstellt werden: \\[0.1cm]
+
+\begin{tikzpicture}
+\begin{class}[text width=4cm]{Film}{0,0}
+\attribute{Titel}
+\attribute{Länge}
+\attribute{Erscheinungsdatum}
+\end{class}
+
+\begin{class}[text width=3cm]{Actor}{12,0}
+\attribute{ActorNr}
+\attribute{Vorname}
+\attribute{Name}
+\end{class}
+\association{Actor}{m}{$< $spielt in}{Film}{}{n}
+\end{tikzpicture}
+
+\begin{enumerate}[a)]
+\item Gib die Tabellenschemata inklusive sinnvoller Datentypen aller nötigen Tabellen an und markiere darin Fremd- und Primärschlüssel wie üblich.
+\item Nenne und beschreibe knapp zwei Probleme und deren Fachbegriffe die auftreten könnten, wenn zur Speicherung nur eine einzige Tabelle verwendet wird.
+\end{enumerate}
+\end{Aufg}
+
+\begin{Lsg}
+\begin{enumerate}[a)]
+\item
+ \texttt{Film[\underline{Titel: Text, Erscheinungsdatum: Date}, Länge: INTEGER]} \\
+ \texttt{Actor[\underline{ActorNr: INTEGER}, Vorname: Text, Name: TEXT]} \\
+ \texttt{spieltin[\underline{\dashuline{ActorNr: INTEGER}, \dashuline{Titel: Text, Erscheinungsdatum: DATE}}]} \\[0.3cm]
+ Künstlicher Primärschlüssel bei Film auch möglich \\
+ Erscheinungsdatum kann auch Typ Text sein \\
+ Datentypen müssen bei Primär- und Fremdschlüsselbeziehung übereinstimmen \\
+ \BE{2} auf die korrekte Notation (Tabellenname, Klammern, Doppelpunkte, Kommas, Attributnamen, Datentypen) \\
+ \BE{3} auf die korrekte Beziehungstabelle (Primärschlüssel, zwei Fremdschlüssel) \\
+ \BE{2} auf die vollständigen anderen beiden Tabelle \\
+\item
+ \begin{itemize}
+ \item UPDATE-Anomalie: Vergessen von Einträgen bei Änderungen
+ \item INSERT-Anomalie: Neue Sportart könnte nicht ohne Mitglieder angelegt werden
+ \item DELETE-Anomalie: Eine Sportart würde bei der Löschung des letzten Mitglieds ebenfalls gelöscht werden
+ \end{itemize}
+ 0.5 BE pro Fachbegriff und 1 BE pro Beschreibung $\Rightarrow$ \BE{3}
+\end{enumerate}
+\end{Lsg}
diff --git a/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/.gitignore b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/.gitignore
new file mode 100644
index 00000000..7ebc9082
--- /dev/null
+++ b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/.gitignore
@@ -0,0 +1 @@
+themen.pdf
diff --git a/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/joins_social_media.tex b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/joins_social_media.tex
new file mode 120000
index 00000000..5c0c7f0e
--- /dev/null
+++ b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/joins_social_media.tex
@@ -0,0 +1 @@
+../../../1/Aufgaben/joins_social_media.tex \ No newline at end of file
diff --git a/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/klassendiagramm_hoghwarts.tex b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/klassendiagramm_hoghwarts.tex
new file mode 120000
index 00000000..96f4dcae
--- /dev/null
+++ b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/klassendiagramm_hoghwarts.tex
@@ -0,0 +1 @@
+../../../1/Aufgaben/klassendiagramm_hoghwarts.tex \ No newline at end of file
diff --git a/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/tabellenschema_filme_n_m.tex b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/tabellenschema_filme_n_m.tex
new file mode 120000
index 00000000..3ac67076
--- /dev/null
+++ b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/Aufgaben/tabellenschema_filme_n_m.tex
@@ -0,0 +1 @@
+../../../1/Aufgaben/tabellenschema_filme_n_m.tex \ No newline at end of file
diff --git a/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/README.md b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/README.md
new file mode 100644
index 00000000..6b3af64d
--- /dev/null
+++ b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/README.md
@@ -0,0 +1,18 @@
+# Test von Florian Fischer
+
+## PDFs Erzeugen
+
+Um die PDF Dateien aus den LaTeX Quelldateien zu erzeugen, wird eine übliche LaTeX-Installation (bspw. [TeX Live](https://tug.org/texlive/)) benötigt.
+
+Die Quellen nutzen die von mir geschriebene Klasse `test`, die im Ordner `latex` zu finden ist.
+Damit auch LaTeX die Klasse findet, muss deren Pfad als input spezifiziert werden.
+Die meisten Kommandozeilen-Programme unterstützen dazu die Umgebungsvariable `TEXINPUTS`.
+
+Alle PDFs können mit folgendem Befehl erzeugt werden:
+
+`TEXINPUTS=.//: latexmk -pdf test*.tex`
+
+## Lizenz
+
+Solange nichts anderes vermerkt ist, sind die enthaltenen Werke von Florian Fischer unter **CC BY-SA 4.0** lizenziert.
+Eine Kopie der Lizenz ist unter (https://creativecommons.org/licenses/by-sa/4.0/)[https://creativecommons.org/licenses/by-sa/4.0/] zu finden.
diff --git a/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/_test.tex b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/_test.tex
new file mode 100644
index 00000000..90e75037
--- /dev/null
+++ b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/_test.tex
@@ -0,0 +1,30 @@
+\usepackage{minted}
+\Datum{28.11.2025}
+\TestNummer{Nachschrift 1}
+\TestArt{Kurzarbeit}
+\Fach{Informatik}
+\Klasse{10ab}
+
+\begin{document}
+%% Erzeugt den Intro Header
+\Intro
+
+\fancyfoot[RO]{Bitte umblättern!}
+\input{Aufgaben/klassendiagramm_hoghwarts.tex}
+\iflehrer{}{\newpage}
+\fancyfoot[RO]{}
+
+\input{Aufgaben/tabellenschema_filme_n_m.tex}
+\begin{Bearbeitung}
+\kariert[0.5cm]{27}
+\end{Bearbeitung}
+\iflehrer{}{\newpage}
+
+\input{Aufgaben/joins_social_media.tex}
+\begin{Bearbeitung}
+\kariert[0.5cm]{30}
+\end{Bearbeitung}
+\iflehrer{}{\newpage\hfill}
+
+\beTabelle
+\end{document}
diff --git a/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_lehrer.tex b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_lehrer.tex
new file mode 100644
index 00000000..094f5adf
--- /dev/null
+++ b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_lehrer.tex
@@ -0,0 +1,7 @@
+\documentclass[
+lehrerversion,
+erwartungshorizont,
+sigfooter,
+]{test}
+
+\input{_test}
diff --git a/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_loesung.tex b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_loesung.tex
new file mode 100644
index 00000000..d0bb5cf9
--- /dev/null
+++ b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_loesung.tex
@@ -0,0 +1,7 @@
+\documentclass[
+lehrerversion,
+sigfooter,
+keinlogo,
+]{test}
+
+\input{_test}
diff --git a/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_schueler.tex b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_schueler.tex
new file mode 100644
index 00000000..12415c38
--- /dev/null
+++ b/Info/10/Leistungsnachweise/1_KA_10ab_202511228_NS/test_schueler.tex
@@ -0,0 +1,7 @@
+\documentclass[
+sigfooter,
+drawborder,
+twoside,
+]{test}
+
+\input{_test}