Verlinkungen

This commit is contained in:
Marco Ammon 2019-02-12 14:37:05 +01:00
parent bed7ea1ccc
commit 5938d27460
2 changed files with 5 additions and 4 deletions

Binary file not shown.

View File

@ -187,7 +187,7 @@
\item \textbf{TODO:} Muss immer weitergegangen werden?
\end{itemize}
\end{itemize}
\item Zustand im Fehlerfall hängt unter anderem von \begriff{Einbringstrategie} (siehe \textbf{TODO} Recovery) und \begriff{Seitenzuordnung} ab
\item Zustand im Fehlerfall hängt unter anderem von \begriff{Einbringstrategie} (siehe \hyperref[recovery]{Recovery}) und \begriff{Seitenzuordnung} ab
\item Seitenzuordnung: \enquote{Welche Blöcke (in einer Datei) gehören zu einer Seite (im Puffer)?} \begin{itemize}
\item \begriff{direkt}: aufeinander folgende Seiten werden auf aufeinander folgende Blöcke einer Datei abgebildet
\item \begriff{indirekt}: \begriff{Page Table} enthält zu jeder Seite eine Blocknummer
@ -214,7 +214,7 @@
\item Fehlermeldungen und ähnliches werden über die sogenannte \begriff{SQL communication area} verwaltet (\texttt{INCLUDE SQLCA} am Anfang)
\item Mengen-orientes Paradigma des DBVS oft nicht mit Programmiersprache vereinbar $\Rightarrow$ Einrichtung eines \begriff{Cursors} zum tupelweisen Durchlaufen der Ergebnismenge
\item Beispielablauf: \texttt{DECLARE CURSOR} $\rightarrow$ \texttt{OPEN} $\rightarrow$ (mehrfach) \texttt{FETCH} bis Fehlercode $== 100$ $\rightarrow$ \texttt{CLOSE}
\item kann durch Präprozessort direkt als \begriff{stored procedure} \textbf{TODO: Verlinkung} angelegt werden
\item kann durch Präprozessort direkt als \hyperref[stored-procedure]{\begriff{stored procedure}} angelegt werden
\end{itemize}
\item \begriff{Unterprogrammaufruf} (\begriff{Call-Level-Interface}): \begin{itemize}
\item Übergabe der SQL-Anweisungen zur \wichtig{Laufzeit}
@ -236,7 +236,7 @@
\item Ausführung mit \texttt{prep.executeUpdate()}
\end{itemize}
\end{itemize}
\item bei stored-procedures nur noch einmaliges Analysieren, etc. zur Compile-Zeit erforderlich: \begin{itemize}
\item bei stored-procedures nur noch einmaliges Analysieren, etc. zur Compile-Zeit erforderlich: \label{stored-procedure} \begin{itemize}
\item Prozedur in DBVS bekommt \enquote{Namen}, über den sie mit Werten als Parametern aufrufbar ist
\item JDBC:\begin{itemize}
\item \texttt{CallableStatement call = con.prepareCall("\{ call PROZEDUR \}");}
@ -251,7 +251,7 @@
\section{Transaktionen}
\begin{itemize}
\item sinnvoll für \wichtig{nebenläufigen} Zugriff
\item erleichtern Umgang mit \begriff{Fehlern} und Ausfällen (siehe \textbf{TODO}: Link Recovery)
\item erleichtern Umgang mit \begriff{Fehlern} und Ausfällen (siehe \hyperref[recovery]{Recovery}
\item \begriff{Transaktion} als \begriff{logische Einheit} einer Folge von DB-Operationen (von einem logisch konsistenten Zustand zum nächsten): \begin{itemize}
\item bei Fehler vor Ende: Rückgängigmachen der bisher durchgeführten Änderungen
\item bei Fehler nach Ende: kein Problem
@ -381,6 +381,7 @@
\end{itemize}
\section{Recovery}
\label{recovery}
\begin{itemize}
\item \begriff{Programmfehler}: Absturz des Datenbank-Anwendungsprogramms $\Rightarrow$ Daten im Puffer und auf Festplatte in undefiniertem Zustand
\item \begriff{Systemfehler}: DBVS oder BS fällt aus, Hardware-Fehler, \textellipsis $\Rightarrow$ Daten im Puffer verloren, auf Festplatte in undefiniertem Zustand