Grundlagen von Datenbanken SS 2010 Kapitel 8: Datenbank-Einbettung in Programmiersprachen Prof. Dr. Stefan Böttcher Universität Paderborn
|
|
- Richard Hauer
- vor 7 Jahren
- Abrufe
Transkript
1 Grundlagen von Datenbanken SS 2010 Kapitel 8: Datenbank-Einbettung in Programmiersprachen Prof. Dr. Stefan Böttcher Universität Paderborn Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 1
2 Java Database Connectivity (JDBC) Paket von Java-Klassen zum DB-Zugriff mit SQL vom Ziel-DBMS unabhängige API Standard seit Java 1.1 Java-Programm JDBC: API Treibermanager Treiber Zieldatenbanksystem Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 2
3 Java-Interfaces von JDBC SQLDriver : Treiber für ein Ziel-DBMS oder ODBC SQLDriverManager : registriert Treiber Connection : Für Verbindungen Statement : für Statement-Objekt, z.b. Query ResultSet : für Ergebnismenge Die Klassen zu diesen Interfaces werden von DB-Herstellern implementiert JDBC-ODBC-Brücke wird von SUN mitgeliefert Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 3
4 Access - Datenbank anschließen unter ODBC 2. ODBC- Name hinzufügen 1. DB da 3. OK wählen Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 4
5 MySQL- Datenbank anschließen unter ODBC 1. DB da 2. ODBC- Name hinzufügen 3. Server, User, Passwort eingeben und danach DB auswählen 4. OK wählen Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 5
6 Datenbank anschließen unter ODBC ODBC, Excel/Access und 64-Bit Betriebssysteme (z.b. Windows 7, Windows Vista) 64-Bit ODBC-Treiber für Access und Excel werden erst mit Office 2010 geliefert Workaround 32-Bit ODBC-Datenquellen-Administrator aufrufen c:\windows\syswow64\odbcad32.exe 32-Bit Java-Version verwenden Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 6
7 Datenbankzugriffe mit JDBC Treiber laden Class c = Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Verbindung herstellen con = DriverManager.getConnection("jdbc:odbc:odbc2access"); Statement-Objekte definieren Statement stmt = con.createstatement() ; Datenbank zugreifen, z.b. einfügen stmt.executeupdate( insert into Liefert values( IBM, pc500, 2500,6) ); Statement und Verbindung zum DBMS schließen stmt.close( ) ; con.close( ) ; Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 7
8 Datenbank-Anfragen mit JDBC Class c = Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); con = DriverManager.getConnection("jdbc:odbc:odbc2access"); Statement stmt = con.createstatement() ; Datenbankanfrage stellen ResultSet rsliefert = stmt.executequery( select * from Liefert where Teil = pc500 ); while ( rsliefert.next( ) ) // hole nächstes Tupel aus Result-Set { ausgabe += rsliefert.getstring( "Lieferant" ) ; // ggf. weitere Spalten ausgeben } stmt.close( ) ; con.close( ) ; Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 8
9 Datenbank anlegen mit JDBC-Programm import java.sql.*; public class dbinit { public static void main( String[] args ) { String ergebnis = "" ; try { Class c = Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // Treiber für ODBC Connection con = DriverManager.getConnection("jdbc:odbc:odbc2access"); try { ergebnis = makedb( con ) ; // : :DB-Name unter ODBC System.out.println( ergebnis ) ; } finally { con.close( ) ; } } catch (Exception e) { System.out.println( e ) ; } } // main zuende public static String makedb( Connection con ) { String ausgabe="" ; // String zum Sammeln der Ausgabe try { Statement stmt = con.createstatement() ; stmt.executeupdate( "create table Liefert( Lieferant char(10), Teil char(10), Preis int, Lieferzeit int ) " ); stmt.executeupdate( "Insert into Liefert values('vobis ','pc400',1700,3)" ); stmt.close( ); // Statement schließen ausgabe += "\ndatenbank initialisiert.\n" ; } catch (Exception e) { ausgabe += "\n" + "Fehler: " + e ; } return ausgabe ; } // makedb zuende } // class dbinit zuende Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 9
10 Datenbank lesen mit JDBC-Programm (1) import java.sql.*; public class dbselect { public static void main( String[] args ) { String ergebnis = "" ; try { Class c = Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // Treiber für ODBC Connection con = DriverManager.getConnection("jdbc:odbc:odbc2access"); try { ergebnis = selecttab( con, "2200" ) ; // : :DB-Name unter ODBC System.out.println( ergebnis ) ; } finally { con.close( ) ; } } catch (Exception e) { System.out.println( e ) ; } } // main zuende // es folgt noch : public static String selecttab( Connection con, String limit ) { // berechne die richtige Ausgabe siehe nächste Folie } // Funktion selecttab zuende } // class dbselect zuende Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 10
11 Datenbank lesen mit JDBC-Programm (2) import java.sql.*; public class dbselect { public static void main( String[] args ) { } public static String selecttab( Connection con, String limit ) { String ausgabe="" ; // String zum Sammeln der Ausgabe try { Statement stmt = con.createstatement() ; ResultSet rsliefert = stmt.executequery( "SELECT * FROM Liefert WHERE Preis < " + limit ) ; // Strings in SQL müssten zusätzlich in einfache Hochkommas: // "SELECT * FROM Liefert WHERE Teil = '" + limit + "'" ) ; ausgabe += "\n\nliefert:\n( Lieferant Teil Preis Lieferzeit )" ; while (rsliefert.next()) // hole nächstes Tupel aus Result-Set { ausgabe += "\n" + rsliefert.getstring("lieferant") + " " + rsliefert.getstring("teil") + " " + rsliefert.getint("preis") + " " + rsliefert.getint("lieferzeit") ; } rsliefert.close() ; stmt.close() ; // ResultSet schließen, Statement schließen } catch (Exception e) { ausgabe += "\nfehler bei Anfrage an die Datenbank:\n" + e ; } return ausgabe ; } // Funktion selecttab zuende } // class dbselect zuende Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 11
12 Datenbankschema lesen import java.sql.*; public class dbinf { public static void main( String[] args ) { String ergebnis = "" ; try { Class c = Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:odbc2access"); ergebnis = accessdb( con ) ; System.out.println( ergebnis ) ; } catch (Exception e) { System.out.println( e ) ; } } public static String accessdb( Connection con ) { String ausgabe="" ; // String zum Sammeln der Ausgabe try { DatabaseMetaData md = con.getmetadata(); final String[ ] tabellen = {"TABLE"}; // Hilfsvariable ResultSet tablesnames = md.gettables( null, null, null, tabellen ); while (tablesnames.next()) { String tablename = new String(tablesNames.getString(3)); ausgabe += tablename + "\n" ; } } catch (Exception e) { ausgabe += e ; } return ausgabe; } // accessdb zuende } // class dbinf zuende Metadaten der Datenbank lesen Tabellennamen der Datenbank lesen Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 12
13 Tabelle komplett lesen import java.sql.*; public class dbtab { // Main-Funktion wie in den anderen Programmen, jedoch Aufruf: // ergebnis = accesstab( con, "Auftrag" ) ; public static String accesstab( Connection con, String tabelle ) { int spalte; String ausgabe="" ; // String zum Sammeln der Ausgabe try { Statement stmt = con.createstatement(); ResultSet rs = stmt.executequery("select * from " + tabelle); ResultSetMetaData rsmd= rs.getmetadata(); int spaltenanzahl = rsmd.getcolumncount(); for( spalte=1 ; spalte <= spaltenanzahl ; spalte++ ) { ausgabe += rsmd.getcolumnlabel( spalte ) + "\t\t" ; } ausgabe += "\n \n" ; while (rs.next()) { for( spalte=1 ; spalte <= spaltenanzahl ; spalte++ ) { ausgabe += rs.getstring(spalte) + "\t" ; } ausgabe += "\n" ; } } catch (Exception e) { ausgabe += e ; } return ausgabe; } // accesstab } // class dbtab zuende Metadaten der Tabelle lesen Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 13
14 Zugriff auf Oracle-Datenbanken Treiber laden Class c = Class.forName("oracle.jdbc.OracleDriver"); Verbindung herstellen // Treiber für Oracle Connection con = DriverManager.getConnection( "jdbc:oracle:thin:@ :1521:oradb01", "oracle_login", "oracle_passwort " ); Internetadresse Port Datenbank Alles weitere wie für Access: Statement-Objekt definieren, Datenbank zugreifen, Statement und Verbindung zum DBMS schließen Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 14
15 Zugriff auf Sybase-Datenbank (unter Unix) Treiber laden Class c = Class.forName( com.sybase.jdbc.sybdriver"); Verbindung herstellen con = DriverManager.getConnection ( "jdbc:sybase:tds:beethoven.uni-paderborn.de:4100/kunden", "userid", "password" ); Internetadresse Port Datenbank Alles weitere wie für Access: Statement-Objekt definieren, Datenbank zugreifen, Statement und Verbindung zum DBMS schließen Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 15
16 Zugriff auf MySQL-Datenbank Treiber laden Class c = Class.forName( com.mysql.jdbc.driver"); Verbindung herstellen con = DriverManager.getConnection ( "jdbc:mysql://beethoven.uni-paderborn.de:3306/kunden", "userid", "password" ); Internetadresse Port Datenbank Alles weitere wie für Access: Statement-Objekt definieren, Datenbank zugreifen, Statement und Verbindung zum DBMS schließen Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 16
17 Zugriff auf Excel-Tabellen Treiber laden Class c = Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Verbindung herstellen con = DriverManager.getConnection( "jdbc:odbc:odbc2excel" );? Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 17
18 Zugriff auf Excel-Tabellen Untere rechte Ecke einer Excel-Tabelle für die ODBC- Verarbeitung bekannt machen Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 18
19 Beispielprogramme zu JDBC dbinit.java Datenbank-Initialisierung dbselect.java Selektion von Datenbankinhalten dbinf.java dbtab.java Information über das Datenbankschema lesen nutzt Metadaten der Datenbank Eine beliebige Tabelle ausgeben nutzt Metadaten der auszugebenden Tabelle exinit.java,, extab.java, orainit.java, sybinit.java dasselbe für Excel, Oracle und Sybase Quellcode in.zip-datei Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 19
20 Prepared Statements Statt Statement stmt = con.createstatement(); ResultSet rs = stmt.executequery( "select * from liefert where teil = '" + pc + "';") ; wird folgendes verwendet PreparedStatement pstmt = con.preparestatement( "select * from liefert where teil =?"); pstmt.setstring(1, pc); ResultSet rs = pstmt.executequery(); Vorteile: effizienter verarbeitbar durch DBMS verhindert SQL-Injection, d.h. Übergabe pc=" 'pc1' union select login, password from usertable" Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 20
21 Datenbank lesen mit Prepared Statements import java.sql.*; public class dbselectps { public static void main( String[] args ) { } public static String selecttab( Connection con, String limit ) { String ausgabe="" ; // String zum Sammeln der Ausgabe try { PreparedStatement pstmt = con.preparestatement( "SELECT * FROM Liefert WHERE Preis <? ) ; //? Gibt Parameter an pstmt.setstring(1, limit); ResultSet rsliefert = pstmt.executequery(); ausgabe += "\n\nliefert:\n( Lieferant Teil Preis Lieferzeit )" ; while (rsliefert.next()) // hole nächstes Tupel aus Result-Set { ausgabe += "\n" + rsliefert.getstring("lieferant") + " " + rsliefert.getstring("teil") + " " + rsliefert.getint("preis") + " " + rsliefert.getint("lieferzeit") ; } rsliefert.close() ; pstmt.close() ; // ResultSet schließen, Statement schließen } catch (Exception e) { ausgabe += "\nfehler bei Anfrage an die Datenbank:\n" + e ; } return ausgabe ; } // Funktion selecttab zuende } // class dbselectps zuende Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 21
22 Embedded SQL - Überblick alternative Einbettung von SQL in Gastsprache (z.b. C, C++, COBOL, Ada, Pascal) Standard seit 1992 Kommunikation mit der Gastsprache über besonders gekennzeichnete Variablen Precompiler übersetzt EXEC SQL-Befehle in die Gastsprache Vorteil: SQL-Syntax und Typverträglichkeit der Schnittstelle sind bereits zur Compilezeit prüfbar Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 22
23 Embedded SQL - Beispiel // zeige Durchschnittsbetrag aller Konten wenn es Konten gibt EXEC SQL select Count(KontoNr) into :Kontenanzahl from Konten if ( Kontenanzahl 0 ) Attribut der Relation Variable der Gastsprache Datenbankrelation { EXEC SQL select SUM(KontoStand) into :Summe from Konten } println(''durchschnittsbetrag ist :'', Summe / Kontenanzahl ) ; Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher JDBC / Folie 23
Webbasierte 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)
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)
MehrJava-Datenbankzugriff mit JDBC
Java-Datenbankzugriff mit JDBC Vorlesungsmaterial zu JDBC von Prof. Dr. Stefan Böttcher Inhaltsverzeichnis: 1. Praktische Hinweise zum Arbeiten mit JDBC, ODBC und dem Datenbanksystem 2. Übungsaufgaben
MehrExercises for the course Databases and Information Systems I WS 2006/2007 Special exercise JDBC
Prof. Dr. Stefan Böttcher Exercises for the course Databases and Information Systems I WS 2006/2007 Special exercise JDBC 1. Preliminary configurations 1.1. Register ODBC database Chose Arbeitsplatz Systemsteuerung
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
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 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
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
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)
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)
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
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)
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
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
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......................
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
MehrDatenbanksysteme 2011
Datenbanksysteme 2011 noch Kapitel 10: Datenbankapplikationen Oliver Vornberger Institut für Informatik Universität Osnabrück Datenbankapplikationen MS Visio MS Access Embedded SQL im C-Programm JDBC /
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
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
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
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
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:
MehrKlausur Datenbanken II
Klausur Datenbanken II 8.3.2001 Name Vorname Semester Matrikelnr Aufgabe Punkte maximal 1 8 2 8 3 3 4 3 5 4 6 6 7 6 8 6 9 [Zusatz] [4] Summe 44 Punkte erreicht Bitte geben Sie die Lösungen möglichst direkt
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?
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.*;
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
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
MehrDatenbanksysteme I Übung: JDBC. Jana Bauckmann
Datenbanksysteme I Übung: JDBC Jana Bauckmann Wo reicht SQL alleine nicht? 2 Web-Anwendungen Daten übersichtlich und schön präsentieren Komplizierte Fragestellungen Sind sich 2 Tupel ähnlich? Duplikaterkennung
MehrJDBC Datenzugriff aus Java ETIS SS04
JDBC Datenzugriff aus Java ETIS SS04 Gliederung Motivation Bestandteile Fehlerbehandlung Metadaten Zusammenfassung JDBC 2 Motivation(I) Standard für Zugriff auf Datenquellen aus Java- Anwendungen RDBs,
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
MehrKurzübersicht JDBC. Marc Monecke. monecke@informatik.uni-siegen.de. 15. Januar 2003
Kurzübersicht JDBC Marc Monecke monecke@informatik.uni-siegen.de 15. Januar 2003 Zusammenfassung Über JDBC-Schnittstellen können Anwendungsprogramme auf Datenbanken zugreifen, ohne daß dabei hersteller-
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
MehrOracle & Java HOW TO
Oracle & Java HOW TO Helge Janicke, Niels-Peter de Witt, Karsten Wolke 21. Januar 2002 Inhaltsverzeichnis 1 Java-Anbindung an Oracle-DB 2 2 Benötigte Programme und Daten 2 3 Einbinden der Klassen 2 4 Aufbau
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
MehrAG Datenbanken und Informationssysteme Wintersemester 2006 / 2007
AG Datenbanken und Informationssysteme Wintersemester 2006 / 2007 Prof. Dr.-Ing. Dr. h. c. Theo Härder Fachbereich Informatik Technische Universität Kaiserslautern http://wwwdvs.informatik.uni-kl.de import
Mehr7. Übungsblatt. Für die Übung am Donnerstag, 14. Dezember 2006, von 15:30 bis 17:00 Uhr in 13/222.
AG Datenbanken und Informationssysteme Wintersemester 2006 / 2007 Prof. Dr.-Ing. Dr. h. c. Theo Härder Fachbereich Informatik Technische Universität Kaiserslautern http://wwwdvs.informatik.uni-kl.de 7.
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
MehrKapitel 11: Anwendungsentwicklung
Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2015/2016 Kapitel 11: Anwendungsentwicklung Vorlesung:
MehrKapitel 11: Anwendungsentwicklung
Skript zur Vorlesung Wintersemester 2005/2006 Kapitel 11: Anwendungsentwicklung Vorlesung: Dr. Matthias Schubert Übungen: Elke Achtert, Arthur Zimek Skript 2004 Christian Böhm http://www.dbs.informatik.uni-muenchen.de/lehre/dbs
MehrRELATIONONALE DATENBANKEN MIT JDBC
RELATIONONALE DATENBANKEN MIT JDBC Christoph Süsens 07.05.2012 Inhalt Abbildungsverzeichnis...3 Java Database Connection JDBC...4 Herstellen einer Verbindung JDBC - DBMS...4 Treiber Installation Beispiel:
MehrAnwendungsentwicklung für relationale Datenbanken setzt voraus, dass prozedurale Abläufe programmiert werden können!
Datenbanken: Standard CLI und JDBC Anwendungsentwicklung für relationale Datenbanken setzt voraus, dass prozedurale Abläufe programmiert werden können! (Endanwendern ist nicht zuzumuten, SQL zu lernen
MehrDatenbanksysteme 2 Fachbereich Angewandte Informatik WS 11/12 Dipl.-Inf. Christian Pape. 6. Übung
Datenbanksysteme 2 Fachbereich Angewandte Informatik WS 11/12 Dipl.-Inf. Christian Pape 6. Übung Aufgabe 1: In dieser Übung sollen Sie eine kleine Java-Anwendung schreiben, die auf die Oracle-Datenbank
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
MehrUdo Matthias Munz. Datenbanken und SQL. mit. Einführung. Informationstechnik
Udo Matthias Munz Datenbanken und SQL mit Einführung Informationstechnik Zugriff auf eine Datenbank... 2 ODBC... 2 Eine DSN einrichten... 3 Verbindung zu einer Datenbank... 4 Datenbank... 4 Metadaten der
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 MySQL Workbench / HeidiSQL Kommandozeile Weitere?
Mehrembedded SQL Embedded SQL wurde erstmals im SQL92- Standard definiert.
embedded SQL Embedded SQL (abgekürzt: ESQL) ist eine Spracherweiterung von SQL, mit der es möglich ist, SQL-Anweisungen innerhalb einer strukturierten oder objektorientierten Programmiersprache (der Hostsprache)
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
MehrPROGRAMMIERPROJEKT 2016 VERWENDETE TECHNOLOGIEN
PROGRAMMIERPROJEKT 2016 VERWENDETE TECHNOLOGIEN Mathias Weber und Annette Bieniusa ÜBERBLICK Spark SQL SQL in Java SPARK WAS IST DAS? Framework zur Erstellung von Web-Anwendungen in Java Einfach zu verwenden
MehrDatenbanksysteme. Programmieren von Datenbankzugriffen mit JDBC. Burkhardt Renz. Fachbereich MNI Technische Hochschule Mittelhessen
Datenbanksysteme Programmieren von Datenbankzugriffen mit JDBC Burkhardt Renz Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2018 Übersicht Architektur von JDBC Ziele von JDBC Grundstruktur
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,
Mehr11 Anwendungsprogrammierung
11 11 11.1 Programmiersprachenanbindung 11.2 11.3 183 11 Programmiersprachenanbindung Programmiersprachenanbindung Kopplungsarten: prozedurale oder CALL-Schnittstellen (call level interface) Beispiele:
MehrDer Einsatz von SELECT from INSERT auf dem System i
Zwei Operationen werden zu einer neuen Funktion von Jinmei Shen und Karl Hanson INSERT und SELECT waren vor V6R1 in DB2 für i5/os zwei getrennte Operationen. Um eingefügte Spaltenwerte abzufragen, konnte
MehrKapitel 11: Anwendungsentwicklung
Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für ysteme Skript zur Vorlesung Wintersemester 2010/2011 Kapitel 11: Anwendungs Vorlesung: DP Dr. Matthias Schubert
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
MehrDatenbankanwendungen (JDBC)
Datenbankanwendungen (JDBC) Hierarchie: Connection Transaction Statement Connection Aufbau (klassisch): Registrierung des JDBC Driver beim DriverManager: Class.forName(JDBC Driver); Eigentlicher Verbindungsaufbau
MehrÜbung Datenbanksysteme I Embedded SQL, Stored Procedures, JDBC
Übung Datenbanksysteme I G-3.1.09, Campus III Hasso Plattner Institut Motivation Grenzen von SQL 1. Bedingte Anweisungen Erhöhe das Gehalt eines Arbeitsnehmers um 2%, falls er eine Belobigung erhalten
MehrZugriff auf die Datenbank. Ulf Leser Wissensmanagement in der Bioinformatik
Zugriff auf die Datenbank Ulf Leser Wissensmanagement in der Bioinformatik Wie komme ich an die Datenbank? Alternativen Alles in Java machen JDBC Treiber von Oracle herunterladen Java programmieren Java-basierte
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
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,
MehrEinbettung in SQL. Zwei Prinzipien: (1) Statische Einbettung
Einbettung in SQL Zwei Prinzipien: (1) Statische Einbettung - Vorübersetzer-Prinzip (Pre-Compiler) - In Programmcode integrierte SQL-Anweisungen werden durch den Precompiler übersetzt, d.h. in Prozeduraufrufe
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
MehrDatenbanksysteme I Datenbankprogrammierung. 15.6.2009 Felix Naumann
Datenbanksysteme I Datenbankprogrammierung 15.6.2009 Felix Naumann SQL mit einer Programmiersprache verbinden 2 Embedded SQL Kombiniert SQL mit 7 Programmiersprachen ADA, C, Cobol, Fortran, M, Pascal,
Mehr1a) SQL Stored Procedure via IDs
1a) SQL Stored Procedure via IDs Erstellen Sie analog zu Aufgabe 2d) des ersten Übungsblatts eine SQL Stored Procedure, welche den Freundschaftsgrad zweier Benutzer eines sozialen Netzwerks aktualisiert.dazu
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 //
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
MehrModifikation der Datenbank
Modifikation der Datenbank Löschen Einfügen Änderungen Änderungen von Sichten 71 Löschen Wir haben bereits gesehen, dass wir den gesamten Inhalt einer Tabelle r löschen können durch das Kommando: delete
MehrSoftwareentwicklung mit JAVA EE
Softwareentwicklung mit JAVA EE Grundlagen: Datenbankprogrammierung Literatur T. Kudraß (Hrsg.): Taschenbuch Datenbanken, Hanser, 2007 DB-Programmierung-2 Einbettungstechniken Einbettung in 3GL Embedded
MehrLambda Expressions in Java 8
Sie sind da Lambda Expressions in Java 8 Rolf Borst Lambda Expressions sind cool Aus dem Internet Stimmt das? Das total uncoole Beispiel Person nachname : String vorname : String alter : int plz : String
MehrJava und Datenbanken Ein Überblick
Java und Datenbanken Ein Überblick Benjamin Lietzau & Philipp Meyer Sommersemester 2011 1 Themenüberblick 29.03.11 - Benjamin Lietzau & Philipp Meyer - Java und Datenbanken 2 Themenüberblick 1. Einführung
MehrÜbung Datenbanksysteme I JDBC. Thorsten Papenbrock
Übung Datenbanksysteme I JDBC Thorsten Papenbrock Motivation: Grenzen von SQL 2 1. Bedingte Anweisungen Erhöhe das Gehalt eines Arbeitsnehmers um 2%, falls er eine Belobigung erhalten hat 2. Darstellung
MehrEnterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/2013
UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/2013 Transaktionsverarbeitung Teil 2 SQL copyright W. G. Spruth,
MehrÜbung Datenbanksysteme I JDBC. Thorsten Papenbrock
Übung Datenbanksysteme I JDBC Thorsten Papenbrock Motivation: Grenzen von SQL 2 1. Bedingte Anweisungen Erhöhe das Gehalt eines Arbeitsnehmers um 2%, falls er eine Belobigung erhalten hat 2. Darstellung
MehrSQLJ. Standardisierte Java-DB. DB-Schnittstelle. Spezifikationen. Oracle, IBM, Informix, Sybase,, Tandem, Sun, Microsoft stehen dahinter
SQLJ Standardisierte Java-DB DB-Schnittstelle Spezifikationen Part 0: Embedded SQL für Java (ANSI-Standard; Object Language Binding) Statische Einbettung von SQL-Anweisungen in Java-Quelltext Part 1: Java
Mehr11. Datenbankschnittstellen
11. Datenbankschnittstellen Inhalt 11.1 Motivation 11.2 Eingebettetes SQL 11.3 Open Database Connectivity (ODBC) 11.4 Java Database Connectivity (JDBC) 11.5 Objekt-Relationale Abbildung (ORM) 2 11.1 Motivation
MehrÜbung Datenbanksysteme I Embedded SQL, Stored Procedures, JDBC
Folien basierend auf Thorsten Papenbrock Übung Datenbanksysteme I F-2.06, Campus II Hasso Plattner Institut Motivation Grenzen von SQL 1. Bedingte Anweisungen Erhöhe das Gehalt eines Arbeitsnehmers um
MehrJava-Persistenz-Architekturen. Freiberuflicher Entwickler und Autor. DOAG Konferenz 1.12.
Java-Persistenz-Architekturen Rudolf Jansen Freiberuflicher Entwickler und Autor http://www.rudolf-jansen.de info@rudolf-jansen.de DOAG Konferenz 1.12.2008 Inhalt JDBC JPA (Java Persistence API) Spring
Mehr3. Datenbankzugriff (JDBC) Grundlagen der Programmierung II (Java)
3. Datenbankzugriff (JDBC) Grundlagen der Programmierung II (Java) Prof. Dr. Bernhard Humm Hochschule Darmstadt University of Applied Sciences Sommersemester 2006 Übersicht Grundlagen der Programmierung
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
MehrÜbersicht. Relationale Datenbanken SQL - Structured Query Language JDBC - Java Datenbank Schnittstelle Beispielanwendung. R. Kopetzky 7.
Informatik Verbund Stuttgart der Universität Stuttgart Tutorium Java Anbindung von Datenbanken mit JDBC (kopetzky@ike.uni-stuttgart.de) Übersicht Relationale Datenbanken SQL - Structured Query Language
MehrSQL Tutorium Documentation
SQL Tutorium Documentation Release 1.1.0 Sandro Tonon 23.06.2015 Inhaltsverzeichnis 1 Inhalte: 3 1.1 SQL Developer.............................................. 3 1.2 SQL Befehle ausführen.........................................
MehrMySQL mit MyLinux. 2/2003 Java unter Linux
Bild: www.carsten-lehmann.de MySQL mit MyLinux boehm@2xp.de 2/2003 boehm@2xp.de Java unter Linux 1 MySQL mit MyLinux Überblick über MySQL & Co Überblick über MySQL MySQL in 5 Minuten JDBC mit MySQL Ende
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
MehrTag 5 Inhaltsverzeichnis
Tag 5 Inhaltsverzeichnis ODBC / JDBC: Ziel und Prinzip JDBC Überblick Erstes Beispiel Queries (Execute- und UpdateQuery) Der Typ "ResultSet" Diverses Metadata PreparedStatement Transaktionen und Batches
MehrEntwicklung von Web-Anwendungen mit JAVA EE
Entwicklung von Web-Anwendungen mit JAVA EE Grundlagen: Datenbankprogrammierung Literatur T. Kudraß (Hrsg.): Taschenbuch Datenbanken, Hanser, 2007 DB-Programmierung-2 Einbettungstechniken Einbettung in
MehrUniversität Stuttgart Abteilung Anwendersoftware 01.07.2002. - Steht für Embedded SQL in Java. - Java-Methoden als SQL Stored-Procedures
SQLJ Basics Universität Stuttgart Abteilung Anwendersoftware 01.07.2002 Was ist SQLJ? SQLJ Part 0: - Steht für Embedded SQL in Java SQLJ Part 1: - Java-Methoden als SQL Stored-Procedures SQLJ Part 2: -
MehrDatenbanken 1 für Mediennformatiker WS 06. 4. ODBC, JDBC und SQLJ: Datenbank-Anbindung an Anwendungsprogramme
Datenbanken 1 für Mediennformatiker WS 06 4. ODBC, JDBC und SQLJ: Datenbank-Anbindung an Anwendungsprogramme Der letzte Schritt Diese grafische Oberfläche mit der Ebay-Datenbank verbinden... Anwendungen
MehrZiel: Verständnis für Konzepte von JDBC aufbauen
11. JDBC Grundsätzliche Nutzung von JDBC Verbindungsaufbau Anfragen Analyse des erhaltenen Ergebnisses Veränderungen des Ergebnisses Ziel: Verständnis für Konzepte von JDBC aufbauen 253 Überblick: Datenbankanfragen
MehrZiel: wie kann man in Java auf Datenbanken zugreifen und Daten manipulieren? dazu brauchen wir:
Datenbanken - SQL und JDBC Projektseminar Seite 1 Was passiert heute? Ziel: wie kann man in Java auf Datenbanken zugreifen und Daten manipulieren? dazu brauchen wir: Kenntnisse in SQL Kenntnisse von JDBC
MehrPROG O RAMMIE MMI RPROJ O EKT K
PROGRAMMIERPROJEKT 2018 WEB ANWENDUNGEN Dr. Annette Bieniusa ÜBERBLICK Was ist eine Web- Anwendung? Model-View-Controller Pattern Umsetzung für unser Projekt Spark SQL SQL in Java WEB ANWENDUNG HTML ist
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
Mehr