Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger

Java ist auch eine Insel von Christian Ullenboom
Programmieren für die Java 2-Plattform in der Version 5 (Tiger-Release)
Buch: Java ist auch eine Insel
gp Kapitel 20 Datenbankmanagement mit JDBC
  gp 20.1 Das relationale Modell
  gp 20.2 JDBC: der Zugriff auf Datenbanken über Java
  gp 20.3 Die Rolle von SQL
    gp 20.3.1 Ein Rundgang durch SQL-Anfragen
    gp 20.3.2 Datenabfrage mit der Data Query Language (DQL)
    gp 20.3.3 Tabellen anlegen mit der Data Definition Language (DDL)
  gp 20.4 Datenbanktreiber für den Zugriff
    gp 20.4.1 Treibertypen
  gp 20.5 Datenbanken und ihre Treiber
    gp 20.5.1 Die freie Datenbank MySQL
    gp 20.5.2 JDBC-Treiber für MySQL: MySQL Connector/J
    gp 20.5.3 Die Datenbank Microsoft Access
    gp 20.5.4 Ein Typ-4-Treiber für den Microsoft SQL Server 2000
    gp 20.5.5 Die JDBC-ODBC-Bridge
    gp 20.5.6 ODBC einrichten und Access damit verwenden
    gp 20.5.7 Oracle9i Enterprise Edition
    gp 20.5.8 JDBC-Treiber für mobile Endgeräte
  gp 20.6 Eine Beispielabfrage
  gp 20.7 Mit Java an eine Datenbank andocken
    gp 20.7.1 Der Treibermanager
    gp 20.7.2 Eine Aufzählung aller Treiber
    gp 20.7.3 Log-Informationen
    gp 20.7.4 Den Treiber laden
    gp 20.7.5 Verbindung zur Datenbank
  gp 20.8 Datenbankabfragen
    gp 20.8.1 Abfragen über das Statement-Objekt
    gp 20.8.2 Ergebnisse einer Abfrage in ResultSet
    gp 20.8.3 Java und SQL-Datentypen
    gp 20.8.4 Unicode in der Spalte korrekt auslesen
    gp 20.8.5 wasNull() bei ResultSet
    gp 20.8.6 Wie viele Zeilen hat ein ResultSet?
  gp 20.9 Die Ausnahmen bei JDBC
  gp 20.10 Transaktionen
  gp 20.11 Elemente einer Datenbank hinzufügen und aktualisieren
    gp 20.11.1 Batch-Updates
  gp 20.12 Vorbereitete Anweisungen (Prepared Statements)
    gp 20.12.1 PreparedStatement-Objekte vorbereiten
    gp 20.12.2 Werte für die Platzhalter eines PreparedStatement
  gp 20.13 Die LOBs (Large Objects)
    gp 20.13.1 Einen BLOB besorgen
  gp 20.14 Die SQL3-Datentypen ARRAY, STRUCT und REF
  gp 20.15 Metadaten
    gp 20.15.1 Metadaten über die Tabelle
    gp 20.15.2 Informationen über die Datenbank
  gp 20.16 DataSource
    gp 20.16.1 Die Schnittstelle DataSource
  gp 20.17 Java Data Objects (JDO)
  gp 20.18 XML-Datenbanken
    gp 20.18.1 Apache Xindice
    gp 20.18.2 eXist und Weitere

Kapitel 20 Datenbankmanagement mit JDBC

Alle Entwicklung ist bis jetzt nichts weiter als ein
Taumeln von einem Irrtum in den anderen.
– Henrik Ibsen

Sammlung, Zugriff und Verwaltung von Informationen werden im »Informationszeitalter« für die Wirtschaft immer wichtiger. Während früher Informationen auf Papier gebracht wurden, bietet die EDV hierfür Datenbankverwaltungssysteme (DBMS, engl. Database Management Systems) an. Diese arbeiten auf einer Datenbasis, also Informationseinheiten, die miteinander in Beziehung stehen. Die Programme, die die Datenbasis kontrollieren, bilden die zweite Hälfe der DBMS. Die ursprünglich modernen Netzwerkmodelle oder hierarchischen Datenmodelle sind mittlerweile überholt, befinden sich aber teilweise noch im Einsatz. An ihre Stelle trat das relationale Datenbankmodell. Dies sind, kurz gesagt, Tabellen, die miteinander in Beziehung stehen.

Mittlerweise gibt es neben den relationalen Modellen auch anderen Speicherformen für Datenbanken. Populär werden immer mehr objektorientierte Datenbanken und XML-Datenbanken. Auch mit ihnen werden wir uns kurz beschäftigen.


Galileo Computing

20.1 Das relationale Modeltoptop

Die Grundlage für relationale Datenbanken sind Tabellen mit ihren Spalten und Zeilen. Diese drei Wörter verraten uns zwar nicht, was hier relational ist, doch die Relationen werden in Tabellen abgebildet. In der Vertikalen sind die Spalten und in der Horizontalen die Zeilen angegeben. Eine Zeile (auch Tupel genannt) entspricht einem Element einer Tabelle, eine Spalte (auch Attribut genannt) einem Eintrag einer Tabelle.


Tabelle 20.1   Eine Beispieltabelle

Lfr_Code Lfr_Name Adresse Wohnort
004 Hoven G. H. Sandweg 50 Linz
009 Baumgarten R. Tankstrasse 23 Hannover
011 Strauch GmbH Beerenweg 34a Linz
013 Spitzmann Hintergarten 9 Aalen
... ... ... ...

Jede Tabelle entspricht einer logischen Sicht des Benutzers. Hier wird zwischen Datenbankausprägung und Datenbankschema unterschieden. Die Zeilen einer Relation stellen die Datenbankausprägung dar, während die Struktur der Tabelle – also Anzahl und Name der Spalten – das Datenbankschema beschreibt.

Um nun auf diese Tabellen Zugriff zu erhalten, um damit die Datenbankausprägung zu erfahren, benötigen wir Abfragemöglichkeiten. Java lässt uns mit dem jetzigen Modell (JDBC) auf relationale Datenbanken zugreifen.





Copyright © Galileo Press GmbH 2004
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press GmbH, Gartenstraße 24, 53229 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de