Datenbankzugriff mit JDBC
|
|
- Peter Holst
- vor 8 Jahren
- Abrufe
Transkript
1 Datenbankzugriff mit JDBC Praktikum aus Java Praktikum SS
2 Datenbankzugriff mit JDBC HSQLDB Installation und Anwendung JDBC Grundlagen, DriverManager, Connection, Java Praktikum SS
3 HSQLDB Einleitung & Installation Open Source RDBMS (SQL 93, 99, 2003) 100% Java Typ 4 JDBC-Treiber Implementierung Verfügbar unter Installation Entpacken des ZIP-Files hsqldb.jar zum CLASSPATH Default Port: 9001 Starten des Standalone-Servers c:\ java cp /hsqldb.jar org.hsqldb.server database.0 file:mydb dbname.0 xdb Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 3
4 HSQLDB Verbindung herstellen JDBC-Treiber laden: try { Class.forName("org.hsqldb.jdbcDriver"); } catch (Exception e) { } Verbindung herstellen: Connection c = java.sql.drivermanager.getconnection ( "jdbc:hsqldb:hsql://localhost:9001/xdb", "sa", // user ""); // password Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 4
5 HSQLDB Tools org.hsqldb.util.databasemanager org.hsqldb.util.databasemanagerswing org.hsqldb.util.transfer org.hsqldb.util.querytool org.hsqldb.util.scripttool Details siehe Doku Java Praktikum SS
6 MEMORY CREATE TABLE Daten immer vollständig im Speicher CACHED CREATE CACHED TABLE Für große Datenmengen TEXT Tabelle als CSV File, Default Trennzeichen ',' CREATE TEXT TABLE SET SOURCE TEMP HSQLDB Tabellen Typen Daten werden beim Beenden gelöscht Java Praktikum SS
7 Primary Key HSQLDB Constraints & Indizes Spalte, die Datenzeile eindeutig identifiziert Index wird automatisch erzeugt IDENTITY Typ INTEGER, wird automatisch erhöht beim Einfügen Unique Spalte mit eindeutigem Wert pro Datenzeile Index wird automatisch erzeugt Der Wert NULL darf mehrfach vorkommen Foreign Keys Eine oder mehrere Spalten, die Datenzeile einer anderen Tabelle identifizieren Java Praktikum SS
8 Datenbankzugriff mit JDBC HSQLDB Installation und Anwendung JDBC Grundlagen, DriverManager, Connection, Java Praktikum SS
9 JDBC Einleitung (1/2) Call Level Interface zu relationalen Datenbanken Übermittlung von SQL Statements Datendefinition, Manipulation, Abfrage Result Sets zur Verarbeitung von Abfrageergebnissen Package java.sql definiert die Standard-Schnittstelle JDBC 3.0 inkludiert in J2SDK 1.4 und J2EE 1.4 javax.sql neue Features seit JDBC 2.0 Optional Package Unterstütz die wichtigsten Features von SQL99 Herstellerunabhängiger Zugang zu den gemeinsamen Features Java Praktikum SS
10 JDBC Einleitung (2/2) Implementierung durch datenbankspezifische Treiber Treiber werden vom DriverManager verwaltet Kompatibilität mit unterschiedlichen Datenbanken? Ja, aber... Nicht alle Treiber implementieren JDBC vollständig Verwendung proprietärer Treiber-Erweiterungen Verwendung proprietärer SQL Konstrukte Java Praktikum SS
11 JDBC Typ 1: JDBC/ODBC Bridge Praktikum aus Java Praktikum SS
12 JDBC Typ 2: Plattformeigene JDBC-Treiber Java Praktikum SS
13 JDBC Typ 3: Universelle JDBC-Treiber Praktikum aus Java Praktikum SS
14 JDBC Typ 4: Native JDBC-Treiber Praktikum aus Java Praktikum SS
15 JDBC Treibertypen Typ 1: JDBC Api ist ein Mapping zu einem anderen Api, wie zum Beispiel ODBC JDBC-ODBC Bridge wird von Sun mitgeliefert erfordert client-seitige Installation des ODBC Treibers (native Code) Typ 2: Native-API partly-java drivers, native Library und Java Code Erfordert client-seitige Installation eines DB-spezifischen Treibers z.b. Oracle OCI Driver (basiert auf SQL*Net) Typ 3: Pure Java Treiber der mit einem Middleware Server kommuniziert Middleware-Server vermittelt auf verschiedene DBMS z.b. DataDirect (Merant) Type 4: Native-protocol all-java drivers baut DB-Client/Server-Protokoll via Java TCP/IP Sockets (Package java.net) nach z.b. Oracle Thin Driver (simuliert SQL*Net) Reines Java Java Praktikum SS
16 JDBC Essentielle Klassen und Interfaces JDBC-Treiber Laden und Registrieren java.sql.drivermanager, javax.sql.datasource Datenbankverbindung java.sql.connection Ausführen von SQL Anweisungen java.sql.statement, java.sql.preparedstatement Zugriff auf Ergebnisse einer SQL Abfrage java.sql.resultset Java Praktikum SS
17 JDBC Verbindung zur DB herstellen Praktikum aus Laden eines DB Treibers java.sql.drivermanager.registerdriver(new OracleDriver()); Verbindung herstellen Connection con = DriverManager.getConnection(datenbankURL [,username,password]); Datenbank-URL jdbc:subprotocol:details Oracle Thin Treiber: "jdbc:oracle:thin:@hostname:1521:serverid" HSQLDB: hsql://hostname:9001/xdb MySQL: "jdbc:mysql://localhost:3306/test" Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 17
18 JDBC Bsp: LVA-Anmeldungen Praktikum aus Student matrnr:int vorname:string nachname:string m ist angemeldet -> n LVA lvanr:int name:string leiter:string beschreibung:url CREATE TABLE Student ( matrnr IDENTITY PRIMARY KEY, vorname VARCHAR(30), nachname VARCHAR(30)) CREATE TABLE LVA ( lvanr IDENTITY PRIMARY KEY, name VARCHAR(80), leiter VARCHAR(30)) CREATE TABLE Anmeldung ( matrnr INTEGER, lvanr INTEGER, FOREIGN KEY (matrnr) REFERENCES Student, FOREIGN KEY (lvanr) REFERENCES LVA) Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 18
19 JDBC Kapselung der DB-Zugriffe (1/2) DAO Pattern Praktikum aus Java Praktikum SS
20 JDBC Kapselung der DB-Zugriffe (2/2) Data Access Objects (DAO) Kapseln und Abstraktion von Zugriffen auf Datenquellen (Files, DBMS, ODBMS ) DAO Umgebung Transfer Object (Bean) Keine Logik, nur die Daten Data Source (kapselt Datenquelle) Business Object (Anwendungslogik) Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 20
21 JDBC SELECT Statement SQL-Query: Alle Anmeldungen zum PK SWE2, sortiert nach 'nachname' String select = "SELECT s.nachname, s.vorname, s.matrnr " + " FROM Student s " + " JOIN Anmeldung a ON a.matrnr=s.matrnr " + " WHERE a.lvanr =? " + " ORDERED BY s.nachname"; Statement erzeugen, Werte setzen: PreparedStatement stmt = con.preparestatement(select); stmt.setstring(1, " "); Query am DB Server ausführen: ResultSet rs = stmt.executequery(); Pro Statement nur ein ResultSet gleichzeitig Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 21
22 JDBC ResultSet ResultSet: zeilenweiser Iterator über Query Ergebnis Zugriff auf Felder der aktuellen Zeile: public String getxxx(columnindex); // Index beginnt bei 1 public String getxxx("columnname"); XXX String, Date, Int, Boolean, Object,... SQL-Typen werden automatisch konvertiert. NULL-Werte liefert null für Objekttypen, aber die Zahl 0 bzw. false für primitive Datentypen; wasnull() prüft, ob das gelesene Feld NULL war. Bsp: alle Zeilen des ResultSet lesen: while(rs.next()) { String nachname = rs.getstring(1); String vorname = rs.getstring(2); int matrnr = rs.getint(3); } rs.close(); Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 22
23 JDBC Prepared Statements Werden von DBMS wiederverwendet Setter für Datentypen JDBC Treiber konvertiert in native DB Typen und deren Formatierung (Dezimalzahlen, Datum ) String insstr = "INSERT INTO STUDENT VALUES(?,?,?)"; PreparedStatement updatestmt; updatestmt = con.preparestatement(insstr); updatestmt.setint(1, ); updatestmt.setstring(2, "Helge"); //für NULL-Werte updatestmt.setnull(3, java.sql.types.varchar); int i = updatestmt.executeupdate(); Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 23
24 JDBC INSERT, UPDATE, DELETE Neuen Datensatz Einfügen - INSERT Datensatz Ändern - UPDATE Datensatz Löschen - DELETE Ausführung mit int executeupdate(string statement) Rückgabewert ist die Anzahl der betroffenen Tupel Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 24
25 JDBC Skriptsprachen PL/SQL (Oracle), TSQL (MSSQL)... HSQLDB: SqlTool Procedural Language Art des Ergebnisses nicht im Vorhinein bekannt Aufruf von DB-Funktionen oder Prozeduren Benutzereingaben Ausführung mit boolean execute(string sqlorprogram) true, falls das Ergebnis ein ResultSet ist ResultSet getresultset(); sonst: int getupdatecount() liefert die Anzahl der verarbeiteten Rows, oder -1 Java Praktikum SS
26 Transaktion: Zusammenfassung von mehreren DB Änderungen UPDATE, INSERT, DELETE Isolation von parallelen Änderungen SELECT JDBC Transaktionssteuerung (1/3) Praktikum aus Steuerung in Business Logik implementiert, also außerhalb der DAO Schnittstellen Zeit T 1 T 2 Änderung-1 Änderung-n COMMIT Änderung-1 Änderung-n ROLLBACK Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 26
27 JDBC Transaktionssteuerung (2/3) Methoden commit() und rollback() des Interfaces java.sql.connection; Weitere Methoden: getautocommit(),setautocommit(boolean b) Auto-commit: nach jeder Anweisung erfolgt commit (default); Transaction Isolation Levels int mode = con.gettransactionisolation() read uncommitted: gelesene Daten können nicht committed sein (dirty read) read committed: gelesene Daten sind committed repeatable reads: Änderungen von Rows bleiben innerhalb Transaktion unsichtbar, neue Rows werden sichtbar (phantom reads) serializable: DBMS führt keine Transaktionen parallel aus Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 27
28 Optimistic Locking JDBC Transaktionssteuerung (3/3) Praktikum aus Mehrere Benutzer ändern gleichzeitig bestimmten Datensazt Erkennung durch spezielle Spalte modify_counter oder version Transaktion: SELECT // modify_counter = 1 UPDATE SET modify_counter = 2 WHERE modify_counter = 1 COMMIT // im Fehlerfall ROLLBACK Falls UPDATE fehlschlägt Concurrent Update Exception Transaktion abbrechen (rollback) und wiederholen Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 28
29 JDBC 2.0 Batch-Updates (1/2) Praktikum aus Batch-Updates: mehrere Updates werden am DB-Server in einem Durchgang abgarbeitet Normales Update mit: executeupdate() 100 Aufrufe = 100 Client-Server Round Trips Ab JDBC 2.0: executebatch() 100 Aufrufe = 1 Client-Server Round Trip Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 29
30 JDBC 2.0 Batch-Updates (2/2) Beispiel: Statement stmt = con.createstatement(); stmt.addbatch( "INSERT INTO COFFEES VALUES('Amaretto', 49, 9.99)"); stmt.addbatch( "INSERT INTO COFFEES VALUES('Hazelnut', 49, 9.99)");... int [] updatecounts = stmt.executebatch(); Batch-Update Exceptions: } catch(batchupdateexception b) { for (int updatecount : b.getupdatecounts()) { System.err.printf("statement %d: %d%n", i, updatecount); } } Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 30
31 JDBC Meta-Daten (1/2) ResultSetMetaData, Daten über das Ergebnis einer Abfrage: ResultSetMetaData metadata = rs.getmetadata(); columncount = metadata.getcolumncount(); String cn = metadata.getcolumnname(i); int ct = metadata.getcolumntype(i); //see java.sql.types int ds = metadata.getcolumndisplaysize(i);... Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 31
32 JDBC Meta-Daten (2/2) DatabaseMetaData, umfangreiche Methoden, um Details wie Schema, Zugriffsrechte, usw. eines DBMS abfragen zu können: DatabaseMetaData dbmd = con.getmetadata(); ResultSet rset = dbmd.getcatalogs(); int mv = dbmd.getdrivermajorversion();... Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 32
33 Klasse SQLException JDBC Exception Handling kann von den meisten JDBC-Methoden geworfen werden getmessage(), getsqlstate(), geterrorcode() etc. SQLException getnextexception() Klasse SQLWarning (spez. DataTruncation) Connection, Statement, ResultSet verwalten eine Liste von Warnings getwarnings() und getnextwarning() bzw. clearwarnings() Kombination mit Transaktionssteuerung rollback im catch-block einer Transaktion; ggf. Wiederholung Statement und/oder Connection sollten im finally Block geschlossen werden Java Praktikum SS
34 JDBC Abbildung von Datentypen Praktikum aus Java Praktikum SS
35 JDBC 2.0 ResultSet Erweiterungen Scrollbare ResultSets Cursor in einem ResultSet kann nach vor und zurück bewegt werden Funktionalität muss extra eingeschaltet werden Änderung der aktuellen Row eines ResultSets UPDATE, INSERT, DELETE Java Praktikum SS
36 JDBC 2.0 SQL3 Datentypen SQL3 Datentypen: Blob (Binary Large Object) Clob (Character Large Object) Array Struct Ref getblob(), setblob(), updateblob()... Java Praktikum SS
37 JDBC 3.0 Neuerungen in JDBC 3.0 (1/3) Praktikum aus Änderungen in der Metadata API Änderungen an den Datentypen (z.b. neuer Datentyp java.sql.types.boolean) Auswerten von automatisch generierten Keys Statement stmt = conn.createstatement(); // Obtain the generated key that results from the query. stmt.executeupdate("insert INTO authors " + "(first_name, last_name) " + "VALUES ('George', 'Orwell')", Statement.RETURN_GENERATED_KEYS); ResultSet rs = stmt.getgeneratedkeys(); if ( rs.next() ) { // Retrieve the auto generated key(s). int key = rs.getint(1); } Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 37
38 JDBC 3.0 Neuerungen in JDBC 3.0 (2/3) Connection pooling Prepared Statement pooling Savepoints in Transaktionen Java Praktikum SS
39 Beispiel: JDBC 3.0 Neuerungen in JDBC 3.0 (3/3) Praktikum aus conn.setautocommit(false); // Set a conservative transaction isolation level. conn.settransactionisolation(connection.transaction_serializable) ; Statement stmt = conn.createstatement(); int rows = stmt.executeupdate("insert INTO authors " + "(first_name, last_name) VALUES " + "('Lewis', 'Carroll')"); // Set a named savepoint. Savepoint svpt = conn.setsavepoint("newauthor"); //... rows = stmt.executeupdate("update authors set type = 'fiction' " + "WHERE last_name = 'Carroll'"); //... conn.rollback(svpt); //... // The author has been added, but not updated. conn.commit(); Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 39
40 Ende der 4. Übung Java Praktikum SS
Datenbankzugriff mit JDBC
Datenbankzugriff mit Praktikum aus Softwareentwicklung 2 Abteilung für Bioinformatik, JKU Linz - 1 Datenbankzugriff mit Grundlagen, DriverManager, Connection, HSQLDB Installation und Anwendung Abteilung
Mehrseit Java 1.1 Bestandteil der API: packages java.sql, javax.sql
JDBC inoffizielle Abkürzung für: Java Database Connectivity seit Java 1.1 Bestandteil der API: packages java.sql, javax.sql ist eine Menge von Klassen und Methoden, um aus Java-Programmen relationale Datenbanken
MehrDatenbankentwurf & Datenbankzugriff mit JDBC. Georg Köster Sven Wagner-Boysen
Datenbankentwurf & Datenbankzugriff mit JDBC Georg Köster Sven Wagner-Boysen 6. November 2007 Gliederung 2 Datenbankentwurf für ProminentPeople.info ER-Modell Relationaler Entwurf Normalisierung Datenbankzugriff
MehrJava Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1
Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1 Was ist JDBC? Hauptsächlich eine Sammlung von Java Klassen und Schnittstellen für eine einfache Verbindung von Java Programmen
MehrDatenbankanwendungen (JDBC)
Datenbankanwendungen (JDBC) Hierarchie: Connection Transaction Statement Connection Aufbau (klassisch): Registrierung des JDBC Driver beim DriverManager: Class.forName(JDBC Driver); Eigentlicher Verbindungsaufbau
MehrJava und Datenbanksysteme Datenbankanbindung mit JDBC
Java und Datenbanksysteme Datenbankanbindung mit JDBC 30.05.2001 Stefan Niederhauser sn@atelier-w.ch 1-Einführung Datenbanksysteme Java und Datenbanken: JDBC Geschichte der JDBC-Versionen Vergleich von
MehrKapitel 10. JDBC und SQLJ. Prof. Dr. Wolfgang Weber Vorlesung Datenbanken 1
Kapitel 10 JDBC und SQLJ 1 JDBC und SQLJ Bisher: Einbettung von SQL (statisch bzw. dynamisch) in C, C++, COBOL, ADA (embedded SQL) bzw. prozedurale Erweiterungen für SQL in Oracle (PL/SQL) Was ist mit
MehrWillkommen. Datenbanken und Anbindung
Willkommen Datenbanken und Anbindung Welche stehen zur Wahl? MySQL Sehr weit verbreitetes DBS (YT, FB, Twitter) Open-Source und Enterprise-Version Libs in C/C++ und Java verfügbar Grundsätzlich ist ein
MehrSQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar
Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-
MehrOracle: Abstrakte Datentypen:
Oracle: Abstrakte Datentypen: Oracle bietet zwei mögliche Arten um abstrakte Datentypen zu implementieren: Varying Array Nested Table Varying Array (kunde) kdnr kdname gekaufteart 1 Mustermann 1 4 5 8
MehrJDBC. Es kann z.b. eine ODBC-Treiberverbindung eingerichtet werden, damit das JAVA-Programm auf eine ACCESS-DB zugreifen kann.
JDBC in 5 Schritten JDBC (Java Database Connectivity) ist eine Sammlung von Klassen und Schnittstellen, mit deren Hilfe man Verbindungen zwischen Javaprogrammen und Datenbanken herstellen kann. 1 Einrichten
MehrJava Application 1 Java Application 2. JDBC DriverManager. JDBC-ODBC Br idge. ODBC Driver Manager. Dr iver C. Dr iver D.
1 Copyright 1996-1997 by Axel T. Schreiner. All Rights Reserved. 7 Datenbankzugriff Prinzip Dieser Abschnitt beschäftigt sich mit dem Paket java.sql, das eine SQL-Schnittstelle für Java verkapselt. Java-Programme
MehrDatenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin
Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,
MehrDATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER
DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.
MehrWie kommen die Befehle zum DBMS
Wie kommen die Befehle zum DBMS Dr. Karsten Tolle Datenbanken und Informationssysteme Wie kommen die Befehle zum DBMS Bisher gesehen: SQL direkt zum DBMS Workbench Kommandozeile IBM Query Tool Weitere?
MehrSQL (Structured Query Language) Schemata Datentypen
2 SQL Sprachelemente Grundlegende Sprachelemente von SQL. 2.1 Übersicht Themen des Kapitels SQL Sprachelemente Themen des Kapitels SQL (Structured Query Language) Schemata Datentypen Im Kapitel SQL Sprachelemente
MehrProgrammieren II. Beispiele für RDBMS. Relationale Datenbanken. Datenbanken SQL. Dr. Klaus Höppner JDBC. Hochschule Darmstadt SS 2008
Programmieren II Datenbanken Dr. Klaus Höppner SQL Hochschule Darmstadt SS 2008 JDBC 1 / 20 2 / 20 Relationale Datenbanken Beispiele für RDBMS Ein Datenbanksystem ist ein System zur Speicherung von (großen)
MehrDatenbank und Informationssysteme
Datenbank und Informationssysteme Inhaltsverzeichnis 1 Programmierung von Datenbankzugriffen 3 1.1 Architektur des SQL/CLI am Beispiel JDBC................... 4 1.2 Anfragen und Ergebnismengen in JDBC......................
Mehr7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2
5 Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn 7 7. Datenbank-Zugriff Zum Beispiel aus PHP-Skripten: Client 7-2 Struktur einer Datenbank 7-3 Erzeugen von Datenbanken
MehrGrundlagen von Datenbanken SS 2010 Kapitel 8: Datenbank-Einbettung in Programmiersprachen Prof. Dr. Stefan Böttcher Universität Paderborn
Grundlagen von Datenbanken SS 2010 Kapitel 8: Datenbank-Einbettung in Programmiersprachen Prof. Dr. Stefan Böttcher Universität Paderborn Grundlagen von Datenbanken - SS 2010 - Prof. Dr. Stefan Böttcher
MehrProzedurale Datenbank- Anwendungsprogrammierung
Idee: Erweiterung von SQL um Komponenten von prozeduralen Sprachen (Sequenz, bedingte Ausführung, Schleife) Bezeichnung: Prozedurale SQL-Erweiterung. In Oracle: PL/SQL, in Microsoft SQL Server: T-SQL.
MehrClient/Server-Programmierung
Client/Server-Programmierung WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 20. November 2015 Betriebssysteme / verteilte
MehrClient/Server-Programmierung
Client/Server-Programmierung WS 2017/2018 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 14. September 2017 Betriebssysteme / verteilte
MehrDatenbanksysteme. Programmieren von Datenbankzugriffen mit JDBC. Burkhardt Renz. Fachbereich MNI Technische Hochschule Mittelhessen
Programmieren von Datenbankzugriffen mit JDBC Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2015 Überblick über das Package java.sql Übersicht Architektur von JDBC Grundstruktur eines
MehrDatenbanken SQL JDBC. Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester / 21
Programmieren II Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2010 1 / 21 Datenbanken SQL JDBC 2 / 21 Relationale Datenbanken Ein Datenbanksystem ist ein System zur Speicherung von (großen) Datenmengen:
MehrTransaktionen in der Praxis. Dr. Karsten Tolle
Transaktionen in der Praxis Dr. Karsten Tolle Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch (Exception e) { e.printstacktrace(); } con.setautocommit(false);
MehrJava Database Connectivity-API (JDBC)
Java Database Connectivity-API (JDBC) Motivation Design Grundlagen Typen Metadaten Transaktionen Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1 Motivation Problem: Zugriff auf ein DBMS ist Herstellerabhängig
MehrDatenmanagement in Android-Apps. 16. Mai 2013
Datenmanagement in Android-Apps 16. Mai 2013 Überblick Strukturierung von datenorientierten Android-Apps Schichtenarchitektur Möglichkeiten der Datenhaltung: in Dateien, die auf der SDCard liegen in einer
MehrJava Database Connectivity-API (JDBC)
Java Database Connectivity-API (JDBC) Motivation Design Grundlagen Typen Metadaten Transaktionen Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1 Motivation Problem: Zugriff auf ein DBMS ist herstellerabhängig
MehrJava Database Connectivity-API (JDBC)
Java Database Connectivity-API (JDBC) Motivation Design Grundlagen Typen Metadaten Transaktionen Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1 Motivation Problem: Zugriff auf ein DBMS ist Herstellerabhängig
MehrVerteidigung gegen SQL Injection Attacks
Verteidigung gegen SQL Injection Attacks Semesterarbeit SS 2003 Daniel Lutz danlutz@watz.ch 1 Inhalt Motivation Demo-Applikation Beispiele von Attacken Massnahmen zur Verteidigung Schlussfolgerungen 2
MehrSQL structured query language
Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query
MehrPHP und MySQL. Integration von MySQL in PHP. Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424. Michael Kluge (michael.kluge@tu-dresden.
Zentrum für Informationsdienste und Hochleistungsrechnen (ZIH) PHP und MySQL Integration von MySQL in PHP Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424 (michael.kluge@tu-dresden.de) MySQL
MehrTag 4 Inhaltsverzeichnis
Tag 4 Inhaltsverzeichnis Normalformen Problem Formen (1-4) Weitere Formen Transaktionen Synchronisationsprobleme Überblick Autocommit Locking Savepoints Isolation levels Übungen RDB 4-1 Normalformen Problematik
MehrDatenbanken SQL-Grundlagen JDBC SQL-Constraints. Programmieren II. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011
Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 Datenbanken 2 SQL-Grundlagen 3 JDBC 4 SQL-Constraints Relationale Datenbanken Ein Datenbanksystem ist ein System zur Speicherung
MehrDB-Programmierung. Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1. Ziele. DB2 Zugriff mit Java selbst programmieren
DB-Programmierung Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele static SQL verstehen Build-Prozess / Art des Datenzugriffs Host-Variablen Vor- / Nachteile dynamic SQL verstehen
MehrUniversität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 11. Dez M. Endres, A. Huhn, T. Preisinger Lösungsblatt 7
Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 11. Dez. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 7 Aufgabe 2 + 3: Datenbanksysteme I import java.sql.*; import oracle.jdbc.driver.*;
MehrTag 4 Inhaltsverzeichnis
Tag 4 Inhaltsverzeichnis Normalformen Problem Formen (1-4) Weitere Formen Transaktionen Synchronisationsprobleme Überblick Autocommit Locking Savepoints Isolation levels Übungen RDB 4-1 Normalformen Problematik
MehrDatenbankzugriff mit JDBC
Java: Kapitel 8 Datenbankzugriff mit JDBC Programmentwicklung WS 2008/2009 Holger Röder holger.roeder@informatik.uni-stuttgart.de Überblick über Kapitel 8 Einführung in SQL und JDBC Verbindung zur Datenbank
MehrEinführung in JDBC. IFIS Universität zu Lübeck 18.04.2007
Einführung in JDBC IFIS Universität zu Lübeck 18.04.2007 1 Was ist JDBC Standard für relationale DB: SQL Vor JDBC: Open Database Connectivity (ODBC), uniforme Schnittstelle für Zugriff JDBC: Programmierschnittstelle
MehrWebbasierte Informationssysteme
SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn - SS 2004 - Prof. Dr. Stefan Böttcher Folie 1 Was ist eine relationale Datenbank? Menge von Relationen (=Tabellen) und Constraints (=Integritätsbedingungen)
MehrTransaktionen in Praxis. Dr. Karsten Tolle Vorl
Transaktionen in Praxis Dr. Karsten Tolle Vorl. 13.06.2017 Probleme bei Transaktionen Lost Update und Inconsistent Retrieval Sichtweise vom Benutzer Auszug aus SQL 92 1) P1 ("Dirty read"): SQL-transaction
MehrIsolationsstufen für Transaktionen. Dr. Karsten Tolle
Isolationsstufen für Transaktionen Dr. Karsten Tolle Probleme bei Transaktionen Gewährleistung der Isolation Sperren kein Lost Update Read 1 (Accounts[13]) Read 2 (Accounts[13]) Write 2 (Accounts[13],101.000)
MehrDynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München
Kapitel 4 Dynamisches SQL Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München 2008 Thomas Bernecker, Tobias Emrich unter Verwendung der Folien des Datenbankpraktikums aus dem Wintersemester
MehrKlausur zur Vorlesung Datenbanksysteme I
Prof. Dr. W. Kießling 30.01.2002 Lehrstuhl für Datenbanken und Informationssysteme Universität Augsburg Klausur zur Vorlesung Datenbanksysteme I Wintersemester 2001/2002 Name Vorname Matrikelnummer Aufgabe
Mehrvs. Fehler zur Übersetzungszeit
Client-Server-Architektur, Anbindung von Programmiersprachen, Call-Level-Schnittstellen: /, JDBC, :, J, gespeicherte Prozeduren, prozedurale Erweiterungen: /PSM, PL/. IPD, Forschungsbereich Systeme der
MehrBeispiel: DB-Mock (1/7)
Beispiel: DB-Mock (1/7) Aufgabe: DB, auf die vereinfachend nur lesend zugeriffen wird mocken warum: benötigte keine DB-Lizenz, garantiert gleiche Werte ohne aufwändiges reset, kein Zeitverlust durch Verbindungsaufbau
MehrJDBC. Allgemeines ODBC. java.sql. Beispiele
JDBC Java Data Base Connectivity Programmierschnittstelle für relationale Datenbanken Sammlung von Klassen, welche zum Aufbau einer Verbindung zwischen einem Java-Programm und einer Datenbank dienen Verwendet
MehrVorlesung Informatik II
Vorlesung Informatik II Universität Augsburg Sommersemester 2011 Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 10. Java: Datenhaltung mit Datenbanken 1 Datenbank-Programme Derby (Hersteller: Apache
MehrDatenbanken & Informationssysteme Übungen Teil 1
Programmierung von Datenbankzugriffen 1. Daten lesen mit JDBC Schreiben Sie eine Java-Anwendung, die die Tabelle Books in der Datenbank azamon ausgibt. Verwenden Sie dabei die SQL-Anweisung select * from
MehrDipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009
Hochschule Darmstadt DATENBANKEN Fachbereich Informatik Praktikum 3 Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 PL/SQL Programmierung Anwendung des Cursor Konzepts und Stored Procedures Und Trigger
MehrReferenzielle Integrität SQL
Referenzielle Integrität in SQL aus Referential Integrity Is Important For Databases von Michael Blaha (Modelsoft Consulting Corp) VII-45 Referenzielle Integrität Definition: Referenzielle Integrität bedeutet
MehrDatenbanktechnologie mit praktischen Übungen in MySQL und PHP
Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Übung, Sommersemester 2013 22. April 2013 - MySQL Sebastian Cuy sebastian.cuy@uni-koeln.de Datenbanken Was sind eigentlich Datenbanken? Eine
MehrKapitel DB:VI (Fortsetzung)
Kapitel DB:VI (Fortsetzung) VI. Die relationale Datenbanksprache SQL Einführung SQL als Datenanfragesprache SQL als Datendefinitionssprache SQL als Datenmanipulationssprache Sichten SQL vom Programm aus
MehrTechnische Beschreibung: EPOD Server
EPOD Encrypted Private Online Disc Technische Beschreibung: EPOD Server Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee JKU Linz Institut für
MehrRelationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL
Relationales Modell: SQLDDL SQL als Definitionssprache SQLDDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben Externe Ebene
Mehr11 Anwendungsprogrammierung
11 11 11.1 Programmiersprachenanbindung 11.2 11.3 183 11 Programmiersprachenanbindung Programmiersprachenanbindung Kopplungsarten: prozedurale oder CALL-Schnittstellen (call level interface) Beispiele:
MehrMySQL Installation. AnPr
Name Klasse Datum 1 Allgemeiner Aufbau Relationale Datenbank Management Systeme (RDBMS) werden im Regelfall als Service installiert. Der Zugriff kann über mehrere Kanäle durchgeführt werden, wobei im Regelfall
MehrArchitekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131
Architekturen Von der DB basierten zur Multi-Tier Anwendung DB/CRM (C) J.M.Joller 2002 131 Lernziele Sie kennen Design und Architektur Patterns, welche beim Datenbankzugriff in verteilten Systemen verwendet
MehrIV. Datenbankmanagement
Wirtschaftsinformatik 2 (PWIN) IV. Datenbankmanagement Kapitel 2: Datenmanipulationssprache SQL Wirtschaftsinformatik 2 (PWIN) SS 2009, Professur für Mobile Business & Multilateral Security 1 Agenda 1.
MehrIsolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012
Isolationsstufen für Transaktionen / Sicherheit Dr. Karsten Tolle Dienstag 31. Januar 2012 Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch
MehrProgrammieren II. Relationale Datenbanken. Vorlesung 07. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011.
Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 / 26 Datenbanken SQL-Grundlagen JDBC SQL-Constraints 2 / 26 Relationale Datenbanken Ein Datenbanksystem ist ein System zur
MehrUniversität Augsburg, Institut für Informatik WS 2011/2012 Prof. Dr. W. Kießling 09. Dez Dr. M. Endres, Dr. S. Mandl, F. Wenzel Lösungsblatt 6
Universität Augsburg, Institut für Informatik WS 2011/2012 Prof. Dr. W. Kießling 09. Dez. 2011 Dr. M. Endres, Dr. S. Mandl, F. Wenzel Lösungsblatt 6 Datenbanksysteme I Aufgabe 1: Deklarative Änderungsoperationen
MehrDatenbankschnittstellen erlauben Zugriff auf Datenbank aus einer externen Anwendung
Rückblick Datenbankschnittstellen erlauben Zugriff auf Datenbank aus einer externen Anwendung Portabilität als wichtige Anforderung, d.h. RDBMS oder Programmiersprache soll leicht austauschbar sein Call-Level
MehrHauptschritte einer JDBC-App
JDBC Java DataBase Connectivity Sammlung von Klassen und Interfaces zur Arbeit mit Datenbanken auf Basis von SQL Package java.sql Datenbankmanagementsystem und eine oder mehrere Datenbanken Jdbc Driver,
MehrReferentielle Integrität
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische
MehrUNIVERSITÄT ULM Fakultät für Ingenieurswissenschaften und Informatik Institut für Datenbanken und Informationssysteme
UNIVERSITÄT ULM Fakultät für Ingenieurswissenschaften und Informatik Institut für Datenbanken und Informationssysteme 8. Übung zur Vorlesung Datenbanksysteme WS 08/09 Musterlösung Aufgabe 8-1: SQLJ //
MehrGrundlagen der Informatik 2
Grundlagen der Informatik 2 Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Gliederung 1. Einführung
MehrÜbung Datenbanken in der Praxis. Datenmodifikation mit SQL
Datenmodifikation mit SQL Folie 45 SQL - Datenmodifikation Einfügen INSERT INTO Relation [(Attribut, Attribut,...)] VALUES (Wert, Wert,...) INSERT INTO Relation [(Attribut, Attribut,...)] SFW-Anfrage Ändern
MehrInteraktive Webseiten mit PHP und MySQL
Interaktive Webseiten mit PHP und Vorlesung 4: PHP & Sommersemester 2003 Martin Ellermann Heiko Holtkamp Sommersemester 2001 Hier noch ein wenig zu (My)SQL: SHOW INSERT SELECT ORDER BY GROUP BY LIKE /
MehrNachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)
Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der
MehrFakultät für Informatik & Wirtschaftsinformatik DB & IS II SS Transaktionen & ACID. Dr. Christian Senger Transaktionen & ACID 1
Transaktionen & ACID Dr. Christian Senger Transaktionen & ACID 1 PC Architekturen Kein Mehrbenuzterbetrieb Recovery? Benutzerabbrüche? PC Lokale Datenbank PC PC PC PC PC PC-System DBMS PC PC PC PC Internet
MehrJava: MySQL-Anbindung mit JDBC.
Java: MySQL-Anbindung mit JDBC Vorarbeiten Wir brauchen: - MySQL-Server - JDBC-Treiber - (Import java.sql.*) Vorarbeiten MySQL-Server in unserem Falle: WAMP (= Apache) (runterladen, installieren, starten)
MehrFolgendes PL/SQL Codefragment zeigt das grundlegende Statement für diesen Test: Java. http://www.trivadis.com/images/javaperf_tcm16-7133.
Page 1 of 7 Betrifft: Java oder PL/SQL? Art der Info: Technische Background Info Autor: Guido Schmutz (guido.schmutz@trivadis.com) Quelle: Aus unserer Schulungs- und Beratungstätigkeit Mit Oracle8.1 besteht
MehrDatenbanken: Datenintegrität. www.informatikzentrale.de
Datenbanken: Datenintegrität Definition "Datenkonsistenz" "in der Datenbankorganisation (...) die Korrektheit der gespeicherten Daten im Sinn einer widerspruchsfreien und vollständigen Abbildung der relevanten
MehrDatenbanken. Ein DBS besteht aus zwei Teilen:
Datenbanken Wikipedia gibt unter http://de.wikipedia.org/wiki/datenbank einen kompakten Einblick in die Welt der Datenbanken, Datenbanksysteme, Datenbankmanagementsysteme & Co: Ein Datenbanksystem (DBS)
MehrInhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung
Inhalt Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle Daten und Tabellen Normalisierung, Beziehungen, Datenmodell SQL - Structured Query Language Anlegen von Tabellen Datentypen (Spalten,
MehrDatenbanksysteme I. Klausur zum Praktikum. Mehrere Professoren prüfen mit genau einem Beisitzer genau einen Studenten.
Lehrstuhl für Datenbanken und Informationssysteme Wintersemester 1999/2000 Universität Augsburg, Institut für Informatik 25. Februar 2000 Prof. Dr. Werner Kießling A. Leubner, M. Wagner Datenbanksysteme
Mehrphp Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...
php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...7 3.Zugriff auf mysql Daten...11 Verteilte Systeme: php.sxw Prof.
MehrDatumsangaben, enthält mindestens Jahr, Monat, Tag
Datenbanken mit SQL Informatik - Sprenger Häufig wird mit Tabellenkalkulationen gearbeitet, obwohl der Einsatz von Datenbanken sinnvoller ist. Tabellenkalkulationen wie Microsoft Excel oder LibreOffice
MehrFachhochschule Kaiserslautern Labor Datenbanken mit MySQL SS2006 Versuch 1
Fachhochschule Kaiserslautern Fachbereiche Elektrotechnik/Informationstechnik und Maschinenbau Labor Datenbanken Versuch 1 : Die Grundlagen von MySQL ------------------------------------------------------------------------------------------------------------
MehrDatenbanken Konsistenz und Mehrnutzerbetrieb III
Datenbanken Konsistenz und Mehrnutzerbetrieb III 1. Oracle Architektur! Komponenten des Oracle Servers! Zugriff über Netzwerk 2. Zugriffsrechte! Starten und Schließen der Datenbank! Nutzer und Rollen!
MehrReferentielle Integrität
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische
MehrMengenvergleiche: Alle Konten außer das, mit dem größten Saldo.
Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten
MehrDB2 SQL, der Systemkatalog & Aktive Datenbanken
DB2 SQL, der Systemkatalog & Aktive Datenbanken Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Auf DB2 Datenbanken zugreifen DB2 Datenbanken benutzen Abfragen ausführen Den Systemkatalog
MehrProgrammieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler
Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Informationen aus der Datenbank lesen Klasse SQLiteDatabase enthält die Methode query(..) 1. Parameter: Tabellenname
MehrMultimedia im Netz. Übung zur Vorlesung. Ludwig-Maximilians-Universität Wintersemester 2010/2011
Übung zur Vorlesung Multimedia im Netz Ludwig-Maximilians-Universität Wintersemester 2010/2011 Ludwig-Maximilians-Universität München Multimedia im Netz - Übung - 2-1 Übungsblatt - 2 Thema: HTML, PHP und
MehrE-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 6: Datenbankabfragen mit SQL und PHP. Stand: 24.11.2014. Übung WS 2014/2015
Übung WS 2014/2015 E-Commerce: IT-Werkzeuge Web-Programmierung Kapitel 6: Datenbankabfragen mit SQL und PHP Stand: 24.11.2014 Benedikt Schumm M.Sc. Lehrstuhl für ABWL und Wirtschaftsinformatik Katholische
MehrHochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.
Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Datenbanken und Informationssysteme II Szenario: Projektverwaltung. Es gibt Projekte, Projektleiter, Mitarbeiter und ihre Zuordnung zu Projekten.
MehrJDBC. Java DataBase Connectivity
JDBC Java DataBase Connectivity JDBC-Schichten JDBC besteht aus 2 Teilen, 1. aus Datenbanktreibern, die den Anschluß von Java-Anwendungen an Datenbanksysteme wie Sybase, DB/2, Oracle, MS ACCESS oder Mini
Mehr1 Transaktionen in SQL. 2 Was ist eine Transaktion. 3 Eigenschaften einer Transaktion. PostgreSQL
1 Transaktionen in SQL Um Daten in einer SQL-Datenbank konsistent zu halten, gibt es einerseits die Möglichkeit der Normalisierung, andererseits sog. Transaktionen. 2 Was ist eine Transaktion Eine Transaktion
MehrHo Ngoc Duc IFIS - Universität zu Lübeck
Ho Ngoc Duc IFIS - Universität zu Lübeck 16.04.2003 1 Standard für relationale DB: SQL Vor JDBC: Open Database Connectivity (ODBC), uniforme Schnittstelle für Zugriff JDBC: Programmierschnittstelle (Java-API)
MehrMySQL, phpmyadmin & SQL. Kurzübersicht
MySQL, phpmyadmin & SQL Kurzübersicht Referenzen MySQL Documentation: http://dev.mysql.com/doc PHP 5 / MySQL5. Studienausgabe. Praxisbuch und Referenz (Kannengießer & Kannengießer) 2 Datenbank anlegen
MehrHochschule Karlsruhe Technik und Wirtschaft
Hochschule Karlsruhe Technik und Wirtschaft Sommersemester 2009 Seite 1/12 Fakultät: Fakultät für Informatik und Wirtschaftsinformatik Semester: BC3 D4 Prüfungsfach: Datenbanken I Fachnummer: I 3B71 I
MehrDatenbanksysteme SS 2007
Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 8a: Datenbankapplikationen ODBC & JDBC ODBC & JDBC Was ist ODBC & JDBC? ODBC = Open Database
MehrMySQL mit MyLinux. boehm@2xp.de. 2/2003 boehm@2xp.de Java unter Linux
Bild: www.carsten-lehmann.de MySQL mit MyLinux boehm@2xp.de 1 MySQL mit MyLinux Überblick über MySQL & Co Überblick über MySQL MySQL in 5 Minuten JDBC mit MySQL Ende 2 Überblick über MySQL & Co 3 Datenbanken
Mehr