%Teilweise Erzeugt mit dem LaTeX-Generator: http://latex.sehnot.de

%Schriftgröße, Layout, Papierformat, Art des Dokumentes
\documentclass[10pt,oneside,a4paper]{scrartcl}

%Einstellungen der Seitenränder
\usepackage[left=2cm,right=2cm,top=1.5cm,bottom=1.5cm,includeheadfoot]{geometry}

%neue Rechtschreibung
\usepackage[ngerman]{babel}

%Umlaute ermöglichen
\usepackage[utf8]{inputenc}

%Gesamtseitenzahl
\usepackage{lastpage}

% Kopf- und Fußzeile
\usepackage[automark]{scrpage2}

%Hyperlinks
\usepackage{hyperref}

%Kopfzeile
\ihead{Java}
\chead{}
\ohead{http://kohnlehome.de/java/jdbc.pdf}
\setheadsepline{0.5pt}

%Fußzeile
\setfootsepline{0.5pt}
\ifoot{Franz Kohnle}
\cfoot{Seite \thepage\ von  \pageref{LastPage}}
\ofoot{\today}

\pagestyle{scrheadings}

\begin{document}

% Überschrift 
\begin{center}
\LARGE % Schriftgröße
\bfseries % Fettdruck
\sffamily % Serifenlose Schrift
JDBC und MySQL
\end{center}

\section{Treiber installieren}
\begin{itemize}
\item Download: \href{http://dev.mysql.com/downloads/connector/j/}{MySQL Connector/J}
\item Entpacken und in Projektverzeichnis kopieren: mysql-connector-java-5.1.34-bin.jar
\item In Projekt einbinden: Project \begin{math}\rightarrow\end{math}  Properties \begin{math}\rightarrow\end{math} Java Build Path \begin{math}\rightarrow\end{math} Libraries \begin{math}\rightarrow\end{math} Add Exrernal JARs...
\end{itemize}


\section{Namensraum}
\begin{verbatim}
import java.sql.*;
\end{verbatim}


\section{Treiber laden}
\begin{verbatim}
Class.forName("com.mysql.jdbc.Driver");
\end{verbatim}


\section{Connection (Verbindung mit Datenbank)}
\begin{verbatim}
String datenbank = "jdbc:mysql://localhost:3306/MeineDB";
String user = "root";
String passwort = "mysql";
Connection connection =  DriverManager.getConnection(datenbank, user, passwort);			
\end{verbatim}

\newpage

\section{SQL-Anweisung mit Parametern}
\subsection{Datensätze lesen}
\begin{verbatim}
String sql = "SELECT * FROM PERSON WHERE Vorname = ?";
\end{verbatim}

\subsection{Datensätze neu, ändern, löschen}
\begin{verbatim}
String sql = "INSERT INTO Tabelle(Vorname, Datum) VALUES(?, ?)";
// String sql = "UPDATE Tabelle SET Datum = ? WHERE Vorname = ?";
// String sql = "DELETE FROM Tabelle WHERE Vorname = ?";
\end{verbatim}

\section{PreparedStatement}
\begin{verbatim}
PreparedStatement statement = connection.prepareStatement(sql);
\end{verbatim}

\section{Argumente an Parameter übergeben}
\begin{verbatim}
statement.setString(1, "Horst");
statement.setString(2, "1980-01-30");
\end{verbatim}

\section{SQL-Anweisung ausführen}
\subsection{Datensätze lesen}
\begin{verbatim}
ResultSet rs = statement.executeQuery();
while(rs.next()){
    ... = rs.getString("Vorname"); 
    ... = rs.getDate("Datum"); 
}
rs.close();
\end{verbatim}

\subsection{Datensätze neu, ändern, löschen}
\begin{verbatim}
statement.executeUpdate();
\end{verbatim}


\section{Alles schließen}
\begin{verbatim}
statement.close();
connection.close();
\end{verbatim}

\end{document}
