Datenbankschnittstellen erlauben Zugriff auf Datenbank aus einer externen Anwendung

Größe: px
Ab Seite anzeigen:

Download "Datenbankschnittstellen erlauben Zugriff auf Datenbank aus einer externen Anwendung"

Transkript

1 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 Interfaces als Schnittstellen für bestimmtes RDBMS und bestimmte Programmiersprache Open Database Connectivity (ODBC) erreicht Entkopplung durch Verwendung von Treibern Java Database Connectivity (JDBC) für Java-Code 42

2 Transaktionskontrolle Beim Ausführen des ersten SQL-Kommandos über eine Verbindung (Connection) wird implizit eine neue Transaktion begonnen Festschreiben (commit) oder Zurückrollen (rollback) der Transaktion ist mit folgenden Kommandos möglich 1 conn.commit(); // im try 1 conn.rollback(); // im try 43

3 Transaktionskontrolle Verbindung kann auf automatisches Festschreiben (auto commit) umgestellt werden, so dass jedes SQL-Kommando direkt festgeschrieben wird 1 conn.setautocommit(true); Achtung: Bei einigen Treibern ist dies die Voreinstellung; ggf. empfiehlt es sich zuerst den aktuellen Wert mittels getautocommit auszulesen 44

4 Transaktionskontrolle Isolationsstufe der Verbindung kann gesetzt werden mit der Methode settransactionisolation, welche eine der folgenden Konstanten als Parameter erwartet Connection.TRANSACTION_READ_UNCOMMITTED Connection.TRANSACTION_READ_COMMITTED Connection.TRANSACTION_REPEATABLE_READ Connection.TRANSACTION_SERIALIZABLE 45

5 Fehlerbehandlung (SQLException) SQLException als Ausnahmeklasse für alle Fehler z.b. beim Verbindungsaufbau oder inkorrektem SQL 1 Connection conn = null; 2 Statement stmt = null; 3 ResultSet rs = null; 4 try { } catch (SQLException sqle) { 7 System.out.println(" Fehler: " + sqle.getmessage()); 8... // Fehlerbearbeitung 9 } finally { 10 if (rs!= null) try {rs.close();} catch (SQLException sqle) {}; 11 if (stmt!= null) try {stmt.close();} catch (SQLException sqle) {}; 12 if (conn!= null) try {conn.close();} catch (SQLException sqle) {}; 13 } Schließen aller JDBC-Objekte, um Ressourcen auf Client (z.b. RAM) oder Server (z.b. Sockets) freizugeben 46

6 Vorkompiliertes SQL (PreparedStatement) Anwendungen führen oft zahlreiche SQL-Kommandos gleicher Bauart auf dem RDBMS via JDBC aus Einfügen von Datensätzen mittels INSERT 1 INSERT INTO Studenten (MatrNr, Vorname, Name) VALUES (?,?,?) Anfragen mit Primärschlüssel als Selektionsprädikat 1 SELECT * FROM Studenten WHERE MatrNr =? Isolierte Ausführung jedes der baugleichen SQL- Kommandos ist teuer, da das RDBMS jedes SQL-Kommando erneut parsen muss jedes SQL-Kommando Netzwerkkommunikation erfordert 47

7 Vorkompiliertes SQL (PreparedStatement) Vorkompiliertes SQL bietet Möglichkeit, baugleiche SQL- Kommandos in einer Art Schablone zusammenzufassen das SQL-Kommando muss so nur einmal geparst werden beim Einfügen können Gruppen (batches) von Zeilen auf einmal, mit einer Netzwerkkommunikation, eingefügt werden JDBC stellt mit der Klasse PreparedStatement eine Klasse bereit, die solches vorkompiliertes SQL erlaubt 48

8 Vorkompiliertes SQL (PreparedStatement) Beim Anlegen eines PreparedStatements können mittels? Platzhalter definiert werden, die dann vor Ausführung durch konkrete Werte ersetzt werden 1 PreparedStatement pstmt = null; // vor try 2 pstmt = conn.preparestatement(" SELECT MatrNr, Name, Vorname " + 3 " FROM Studenten WHERE MatrNr =?"); Ersetzen der Platzhalter und Ausführen des Kommandos 1 long matrnr = 32781; 2 pstmt.setlong(1, matrnr); 3 rs = pstmt.executequery(); 49

9 Vorkompiliertes SQL (PreparedStatement) Bei Verwendung eines PreparedStatement für INSERT Kommandos können zudem einzufügende Zeilen zu Gruppen (batches) zusammengefasst werden 1 PreparedStatement pstmt = null; // vor try 2 3 // Liste mit allen Studenten 4 LinkedList <Student > studenten =...; 5 6 // PreparedStatement anlegen 7 String insert = " INSERT INTO Studenten VALUES ( MatrNr, Vorname, Name) " + 8 " VALUES (?,?,?)" 9 pstmt = conn.preparestatement(insert); // Einzufügende Zeilen vorbereiten 12 for(student : studenten) { 13 pstmt.set(1, student.getmatrnr()); 14 pstmt.set(2, student.getvorname()); 15 pstmt.set(3, student.getname()); 16 pstmt.addbatch(); 17 } // Batch ausfü hren 20 pstmt.executebatch(); 50

10 Vorkompiliertes SQL (PreparedStatement) Achtung: Aktueller Batch wird im RAM des Clients zwischengespeichert; bei sehr großen Batches sollte ggf. executebatch regelmäßig nach bestimmter Anzahl hinzugefügter Zeilen aufgerufen werden 51

11 Vergleich Statement vs. PreparedStatement Code zum Download auf Website zur Vorlesung 1 CREATE TABLE dummy ( 2 a int, 3 b int, 4 c int 5 ) Einfügen von Zeilen per Statement und PreparedStatement in SQLite auf aktuellem Rechner (SSD, i7, 8GB RAM) Dauer mit Statement: 18 Sekunden Dauer mit PreparedStatement: 6 Sekunden 52

12 Ergebnis (ResultSet) Jeder Aufruf von next einer Instanz von ResultSet liest die jeweils nächste Zeile aus dem Ergebnis Je nach JDBC-Treiber bedeutet jeder Aufruf zudem eine Netzwerkkommunikation, d.h. jede Zeile wird separat vom RDBMS übertragen Viele JDBC-Treiber bieten die Möglichkeit der Pufferung, d.h. Zeilen werden in Gruppen übertragen und im RAM des Clients zwischengespeichert Zahl der zu puffernden Zeilen lässt sich mittels der Methode setfetchsize einstellen 53

13 11.5 Objekt-Relationale Abbildung (ORM) Objekt-orientierter Entwurf (z.b. mit UML) führt zu Klassen (z.b. Student und Vorlesung) mit Attributen (z.b. Name oder Titel) Assoziationen (z.b. Student hört Vorlesung) Methoden, die Geschäftslogik erfassen (z.b. Anmelden eines Student zu einer Vorlesung) Instanzen der Klassen sollen dauerhaft (persistent) in einem RDBMS im Hintergrund, abgelegt werden 54

14 Objekt-Relationale Abbildung (ORM) Frameworks zur objekt-relationalen Abbildung (object relational mapping) automatisieren die Erstellung entsprechenden Codes zum Lesen/Speichern der Instanzen sowie zum Anfragen z.b. Enterprise Java Beans in Java EE Java Data Objects und Java Persistence API Hibernate Relationale Datenbank im Hintergrund kann mittels ORM verborgen werden, so dass Entwickler auch ohne SQL-Kenntnisse mit den Daten arbeiten können 55

15 Objekt-Relationale Abbildung (ORM) ekt-relationales Mapping: Prinzip Applikation Laufzeitsystem Datenbankschema Abbildungsvorschrift Anwendungsobjekte Objektmodell Quelle: Saake, Sattler und Heuer [2] 56

16 Objektorientierter Entwurf vs. Relationenmodell Beispiel: Klassen in Hochschulanwendung 1 public class Student { 2 // Attribute 3 private long matrnr; 4 private String vorname; 5 private String name; 6 private int semester; 7 private List<Vorlesung > hört; 8 9 // Konstruktor 10 public Student() {...}; // Methoden 13 public void setmatrnr(long matrnr) {...} 14 public long getmatrnr() {...} 15 public void addvorlesung(vorlesung vorlesung) {...} } 57

17 Objektorientierter Entwurf vs. Relationenmodell Beispiel: Klassen in Hochschulanwendung 1 public class Vorlesung { 2 // Attribute 3 private long vorlnr; 4 private String titel; 5 private List<Student > hörer; 6 private Professor gelesenvon; 7 8 // Konstruktor 9 public Vorlesung() {...}; // Methoden 12 public void setvorlnr(long vorlnr) {...} 13 public long getvorlnr() {...} 14 public void addstudent(student student) {...} } 58

18 Objektorientierter Entwurf vs. Relationenmodell Beispiel: Klassen in Hochschulanwendung 1 public class Professor { 2 // Attribute 3 private long persnr; 4 private String vorname; 5 private String name; 6 private String fach; 7 private Büro int; 8 9 // Konstruktor 10 public Professor() {...}; // Methoden 13 public void setpersnr(long persnr) {...} 14 public long getpersnr() {...} } 59

19 Objektorientierter Entwurf vs. Relationenmodell Wie lassen sich Klassen mit ihren Attributen und Assoziationen auf Relationen abbilden? Idee: Jede Klasse wird auf eine Relation abgebildet Professor +PersNr : int +Vorname : String +Name : String +Fach : String +Büro : int Professoren : Ó Ô [ PersNr : long, Vorname : string, Name : string, Fach : string, Büro : integer ] Problem: Relationale Normalformen werden verletzt z.b. mengenwertige Attribute (z.b. hörer in Vorlesung) Redundanz als Ergebnis von 1:n und n:n Assoziationen 60

20 Objektorientierter Entwurf vs. Relationenmodell Klassen und ihre Assoziationen müssen u.u. auf mehr als eine einzelne Relation abgebildet werden 1:1 Assoziation als Fremdschlüsselattribut 1:n Assoziation als Fremdschlüsselattribut oder als Fremdschlüsseltabelle n:m Assoziation als Fremdschlüsseltabelle Assoziationen mit Attributen auf Fremdschlüsseltabelle vgl. Übersetzung von ERM-Diagrammen in Relationen wie in Kapitel 2 besprochen 61

21 Hibernate Hibernate ( ist ein populäres Java- Framework für objekt-relationale Abbildung Hibernate erhält Java-Klasse mit Abbildungsvorschrift (in XML-Datei) und kann damit Instanzen in Datenbank speichern und sie von dort lesen Bei Navigation entlang von Assoziationen werden die verbundenen Instanzen aus der Datenbank geholt (z.b. die Studenten bei Zugriff auf hörer in Vorlesung) 62

22 Hibernate Abbildungsvorschrift in XML Klasse muss bestimmte Anforderungen erfüllen, z.b. leeren Konstruktor haben sowie get- und set-methoden für alle Attribute Beispiel: Abbildungsvorschrift für Professor 1 <hibernate-mapping> 2 <class name=" Professor" table=" Professoren"> 3 <id name=" persnr"> 4 <generator class=" native" /> 5 </id> 6 <property name=" name" /> 7 <property name=" vorname" /> 8 <property name=" fach"/> 9 <property name="büro" /> 10 </class > 11 </hibernate -mapping > 63

23 Speichern von Daten mit Hibernate Instanz von Klasse wird angelegt und Attribute gesetzt 1 Transaction tx = null; 2 3 // Professor anlegen 4 Professor professor = new Professor(); 5 professor.setpersnr(31415); 6 professor.setvorname(" Albert"); 7 professor.setname(" Einstein"); 8 professor.setbüro(412); 9 10 // Professor speichern 11 try { 12 tx = session.begintransaction(); 13 session.save(professor); 14 tx.commit(); 15 } catch (HibernateException he) { 16 if (tx!= null) tx.rollback(); 17 } session vorab mit Verbindungsparametern initialisiert 64

24 Anfragen mit Hibernate Hibernate unterstützt zudem verschiedene Arten von Anfragen, die keine SQL-Kenntnisse erfordern eigene leichtgewichtige Anfragesprache HQL mittels Beispielinstanz (query by example) basierend auf Kriterien (query by criteria) 65

25 Anfragen mit HQL Hibernate hat eigene einfache Anfragesprache HQL, deren Anfragen sich auf die Namen und Attribute der Java-Klassen beziehen (nicht auf Relationen) 1 // Anfrage formulieren 2 Query query = 3 session.createquery(" from Professor where Name = Einstein "); 4 5 // Ergebnisse lesen 6 Iterator iter = query.iterate(); 7 while (iter.hasnext()) { 8 Professor professor = (Professor) iter.next(); 9 } 66

26 Anfragen mit Beispielinstanz (query by example) Bei Anfragen mit Beispielinstanz wird eine Instanz erzeugt, deren Attribute die gewünschten Werte haben 1 // Beispielinstanz anlegen 2 Professor professor = new Professor(); 3 professor.setname(" Einstein"); 4 5 // Ergebnisse als Liste 6 List<Professor > result = session.createcriteria(professor.class) 7.add(Example.create(professor)).list(); 67

27 Anfragen mit Kriterien (query by criteria) Anfrage kann durch Angabe von Kriterien mittels Methodenaufrufen erzeugt werden 1 // Ergebnisse als Liste 2 List<Professor > res = session.createcriteria(professor.class) 3.add(Restrictions.eq(" Name", " Einstein" )).list(); 68

28 Navigation entlang Assoziationen in Hibernate Bei Navigation entlang Assoziationen (d.h. Zugriff auf Attribute, die auf andere Attribute verweisen), werden die entsprechenden Instanzen automatisch geladen Beispiel: Vorlesungen von Student mit MatrNr // Anfrage formulieren 2 Query query = 3 session.createquery(" from Student where MatrNr = 38762"); 4 5 // Student lesen 6 Student student = (Student) query.list().get(0); 7 8 // Vorlesungstitel ausgeben 9 for (Vorlesung vorlesung : student.getvorlesungen()) { 10 System.out.println(vorlesung.getTitel()); 11 } 69

29 Ändern von Daten in Hibernate Hibernate erlaubt es, Änderungen an Attributwerten von Instanzen zurück in die Datenbank zu schreiben Beispiel: Erhöhe Semester aller Studenten 1 // Transaktionsanfang 2 Transaction tx = session.begintransaction(); 3 4 // Anfrage formulieren 5 Query query = 6 session.createquery(" from Studenten"); 7 8 // Ergebnisse lesen 9 Iterator iter = query.iterate(); 10 while (iter.hasnext()) { 11 Student student = (Student) iter.next(); 12 student.setsemester(student.getsemester() + 1); 13 } // Ä nderungen festschreiben 16 tx.commit(); 70

30 Zusammenfassung JDBC erlaubt Transaktionskontrolle, d.h. Festschreiben und Zurückrollen sowie setzten der Isolationsstufe Vorkompiliertes SQL beschleunigt die Ausführung mehrerer Kommandos gleicher Bauart signifikant Objekt-relationale Abbildung speichert Instanzen von Klassen in relationale Datenbank; kann Datenbank und SQL vor den Entwicklern verbergen Hibernate als populäres Java-Framework für objekt-relationale Abbildung 71

31 Literatur [1] A. Kemper und A. Eickler: Datenbanksysteme Eine Einführung, De Gruyter Oldenbourg, 2013 [2] G. Saake, K.-U. Sattler und A. Heuer: Datenbanken - Konzepte und Sprachen, mitp Professional, 2013 (Kapitel 13) 72

Java Database Connectivity (JDBC) zum Zugriff aus in z.b. in Java geschriebenen Applikationen

Java Database Connectivity (JDBC) zum Zugriff aus in z.b. in Java geschriebenen Applikationen Rückblick Java Database Connectivity (JDBC) zum Zugriff aus in z.b. in Java geschriebenen Applikationen JDBC erlaubt Transaktionskontrolle, d.h. Festschreiben und Zurückrollen sowie setzten der Isolationsstufe

Mehr

Datenbankschnittstellen erlauben Zugriff auf Datenbank aus einer externen Anwendung

Datenbankschnittstellen 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

Webbasierte Informationssysteme

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)

Mehr

Grundlagen 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 Kapitel 8: Datenbank-Einbettung in Programmiersprachen Prof. Dr. Stefan Böttcher Universität Paderborn Grundlagen von Datenbanken - SS 2010 - Prof. Dr. Stefan Böttcher

Mehr

Kapitel 10. JDBC und SQLJ. Prof. Dr. Wolfgang Weber Vorlesung Datenbanken 1

Kapitel 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

Mehr

Willkommen. Datenbanken und Anbindung

Willkommen. 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

Mehr

11. Datenbankschnittstellen

11. 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

Kapitel 14. Objekt-relationales Mapping (ORM) mit Hibernate bzw. Java Persistance API (JPA) Prof. Dr. Wolfgang Weber Vorlesung Datenbanken

Kapitel 14. Objekt-relationales Mapping (ORM) mit Hibernate bzw. Java Persistance API (JPA) Prof. Dr. Wolfgang Weber Vorlesung Datenbanken Kapitel 14 Objekt-relationales Mapping (ORM) mit Hibernate bzw. Java Persistance API (JPA) 1 Wozu Objekt-relationales Mapping? - Problematik - Business-Schicht OO-Klassen Unvereinbarkeit der Paradigmen

Mehr

Structured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken

Structured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken Rückblick Structured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken Data Definition Language zur Schemadefinition (z.b. CREATE TABLE zum Anlegen von Tabellen) Data

Mehr

Rückblick: Relationales Modell

Rückblick: Relationales Modell Rückblick: Relationales Modell Relationales Modell als vorherrschendes Datenmodell Relationen (Tabellen) besitzen Attribute (Spalten) mit Wertebereichen und beinhalten Tupel (Zeilen) Umsetzung eines konzeptuellen

Mehr

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java Oliver Kalz Agenda Grundlagen Objektpersistenz Objektrelationales Mapping Performance Fazit

Mehr

JDBC. Es kann z.b. eine ODBC-Treiberverbindung eingerichtet werden, damit das JAVA-Programm auf eine ACCESS-DB zugreifen kann.

JDBC. 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

Mehr

Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt

Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt 2. Datenbankentwurf Motivation Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt Fehler sind umso teurer zu beheben, je weiter die Entwicklung bzw. der Einsatz

Mehr

Rückblick: Datenbankentwurf

Rückblick: Datenbankentwurf Rückblick: Datenbankentwurf Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben Gegenstände

Mehr

3. Relationales Modell & Algebra

3. Relationales Modell & Algebra 3. Relationales Modell & Algebra Inhalt 3.1 Relationales Modell Wie können wir Daten mathematisch formal darstellen? 3.2 Übersetzung eines konzeptuellen Modells Wie können wir ein konzeptuelles Modell

Mehr

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL Früherer Name: SEQUEL SQL: Structured Query Language Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL ist eine deklarative Anfragesprache Teile von SQL Vier große Teile:

Mehr

Datenbanken & Informationssysteme (WS 2016/2017)

Datenbanken & Informationssysteme (WS 2016/2017) Datenbanken & Informationssysteme (WS 2016/2017) Klaus Berberich (klaus.berberich@htwsaar.de) Wolfgang Braun (wolfgang.braun@htwsaar.de) 0. Organisatorisches Dozenten Klaus Berberich (klaus.berberich@htwsaar.de)

Mehr

Workshop Java Webentwicklung Einführung in Hibernate. Ulrich Stärk

Workshop Java Webentwicklung Einführung in Hibernate. Ulrich Stärk Workshop Java Webentwicklung Einführung in Hibernate Ulrich Stärk Ablauf Montag bis Donnerstag 09:00 Uhr s.t. Beginn, bis ca. 17:00 Uhr 1 Stunde Mittagspause Donnerstag Experiment Aufzeichnung der Programmiertätigkeit

Mehr

5. Relationale Entwurfstheorie

5. Relationale Entwurfstheorie 5 Relationale Entwurfstheorie Motivation Konzeptuelles Modell (ERM) kann in ein relationales Schema mit möglichst wenigen Relationen übersetzt werden (vgl Kapitel 4) Welche Eigenschaften hat ein gutes

Mehr

3. Relationales Modell & Algebra

3. Relationales Modell & Algebra 3. Relationales Modell & Algebra Inhalt 3.1 Relationales Modell Wie können wir Daten mathematisch formal darstellen? 3.2 Übersetzung eines konzeptuellen Modells Wie können wir ein konzeptuelles Modell

Mehr

Rückblick: Entity-Relationship-Modell

Rückblick: Entity-Relationship-Modell Rückblick: Entity-Relationship-Modell Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben

Mehr

9. Sicherheitsaspekte

9. Sicherheitsaspekte 9. Sicherheitsaspekte Motivation Datenbanken enthalten häufig sensible Daten (z.b. personenbezogene oder unternehmenskritische) Vielzahl verschiedener Benutzer hat Zugriff (z.b. Anwendungen, Mitarbeiter,

Mehr

Datenbanken. Seminararbeit. Einführung in das wissenschaftliche Arbeiten

Datenbanken. Seminararbeit. Einführung in das wissenschaftliche Arbeiten Seminararbeit vorgelegt von: Gutachter: Studienbereich: Christian Lechner Dr. Georg Moser Informatik Datum: 6. Juni 2013 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einführung in Datenbanken 1 1.1 Motivation....................................

Mehr

Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten)

Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten) Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten) O/R Mapping - Objekte (Attribute) - 1:1, 1:n, n:m Beziehungen - Vererbungen (- Interfaces)

Mehr

Webbasierte Informationssysteme

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)

Mehr

Datenbankentwurf & Datenbankzugriff mit JDBC. Georg Köster Sven Wagner-Boysen

Datenbankentwurf & 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

Mehr

Datenbanksysteme 2011

Datenbanksysteme 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 /

Mehr

Objektorientierte Datenbanken

Objektorientierte Datenbanken OODB 11 Slide 1 Objektorientierte Datenbanken Vorlesung 11 Sebastian Iwanowski FH Wedel OODB 11 Slide 2 Wesentliche Eigenschaften von Hibernate Transparente Persistenz Transitive Persistenz (Persistenz

Mehr

Persistenz unter Kontrolle mit JDBI für Java

Persistenz unter Kontrolle mit JDBI für Java .consulting.solutions.partnership Persistenz unter Kontrolle mit JDBI für Java DOAG Konferenz 2016 17. November 2016 Persistenz unter Kontrolle mit JBDI für Java 1 2 3 SQL - effizienter Zugriff auf die

Mehr

7. Transaktionsverwaltung

7. Transaktionsverwaltung 7. Transaktionsverwaltung Motivation Transaktionen erlauben Bündelung von Operationen und gelten als wichtigster Beitrag des Bereichs Datenbanken zur Informatik; sie werden heute auch außerhalb von Datenbanksystemen

Mehr

2. Relationale Datenbanken

2. Relationale Datenbanken 2. Relationale Datenbanken Inhalt 2.1 Entity-Relationship-Modell 2.2 Relationales Modell 2.3 Relationale Entwurfstheorie 2.4 Relationale Algebra 2.5 Structured Query Language (SQL) 2 2.1 Entity-Relationship-Modell

Mehr

10. Programmieren in SQL

10. Programmieren in SQL 10. Programmieren in SQL Inhalt 10.1 Motivation 10.2 Prozedurale Erweiterungen von SQL 10.3 Gespeicherte Prozeduren 10.4 Benutzerdefinierte Funktionen 10.5 Verwendung anderer Programmiersprachen 2 10.1

Mehr

Datenbankanwendungen (JDBC)

Datenbankanwendungen (JDBC) Datenbankanwendungen (JDBC) Hierarchie: Connection Transaction Statement Connection Aufbau (klassisch): Registrierung des JDBC Driver beim DriverManager: Class.forName(JDBC Driver); Eigentlicher Verbindungsaufbau

Mehr

5.2 Workshop EJB. Entwicklung von EJB-Anwendungen. Das JOnAS-System

5.2 Workshop EJB. Entwicklung von EJB-Anwendungen. Das JOnAS-System 5.2 Workshop EJB Entwicklung von EJB-Anwendungen Welche Schritte werden benötigt, bis eine verteilte EJB-Anwendung einsatzbereit ist? Was muss alles implementiert werden? An welchen Stellen unterstützt

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Übung zur Vorlesung Einführung in die Informatik 2 für Ingenieure (MSE) Alexander van Renen (renen@in.tum.de)

Mehr

Java: MySQL-Anbindung mit JDBC.

Java: 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)

Mehr

Klausur Datenbanken II

Klausur 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

Mehr

Fokus bisher lag bisher auf sinnvoller Abbildung eines Ausschnitts der realen Welt in einer relationalen Datenbank

Fokus bisher lag bisher auf sinnvoller Abbildung eines Ausschnitts der realen Welt in einer relationalen Datenbank 8. Datenbanktuning Motivation Fokus bisher lag bisher auf sinnvoller Abbildung eines Ausschnitts der realen Welt in einer relationalen Datenbank Beliebige SQL-Anfragen können auf den Daten ausgewertet

Mehr

Oracle & Java HOW TO

Oracle & 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

Mehr

Client/Server-Programmierung

Client/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

Mehr

4.2 Workshop EJB. Entwicklung von EJB-Anwendungen

4.2 Workshop EJB. Entwicklung von EJB-Anwendungen 4.2 Workshop EJB Entwicklung von EJB-Anwendungen Welche Schritte werden benötigt, bis eine verteilte EJB-Anwendung einsatzbereit ist? Was muss alles implementiert werden? An welchen Stellen unterstützt

Mehr

UNIVERSITÄ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 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 //

Mehr

Universitä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 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.*;

Mehr

Datenbanken SQL JDBC. Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester / 21

Datenbanken 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:

Mehr

1a) SQL Stored Procedure via IDs

1a) 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

Mehr

Datenbanksysteme 2011

Datenbanksysteme 2011 Datenbanksysteme 2011 Anfang von Kapitel 10: Datenbankapplikationen Vorlesung vom 06.06.2011 Oliver Vornberger Institut für Informatik Universität Osnabrück Datenbankapplikationen ODBC MS Visio MS Access

Mehr

11 Anwendungsprogrammierung

11 Anwendungsprogrammierung 11 11 11.1 Programmiersprachenanbindung 11.2 11.3 183 11 Programmiersprachenanbindung Programmiersprachenanbindung Kopplungsarten: prozedurale oder CALL-Schnittstellen (call level interface) Beispiele:

Mehr

Kapitel DB:VI (Fortsetzung)

Kapitel 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

Mehr

Relationales Datenbankpraktikum

Relationales Datenbankpraktikum Relationales Datenbankpraktikum Dr. A. Groß, M.Junghanns, V. Christen, Z. Sehili Aufgabe 3 Agenda Überblick zur Aufgabenstellung Hibernate Verwendung des Hibernate- Mapping und HQL innerhalb einer Konsolenapplikation

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

JDBC. Java DataBase Connectivity

JDBC. 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

Mehr

Datenzugriffskomponente mit JPA 2.1

Datenzugriffskomponente mit JPA 2.1 Datenzugriffskomponente mit JPA 2.1 (Grundlagen der Java Persistence Architecture) Vladislav Faerman Gliederung Einführung Konfiguration Objekt-Relationales Mapping (ORM) mit JPA Das zentrale Konzept der

Mehr

Datenbanksysteme 2013

Datenbanksysteme 2013 Datenbanksysteme 2013 Kapitel 8: Datenintegrität Vorlesung vom 14.05.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Datenintegrität Statische Bedingung (jeder Zustand) Dynamische

Mehr

Java und Datenbanksysteme Datenbankanbindung mit JDBC

Java 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

Mehr

Eclipse und EclipseLink

Eclipse und EclipseLink Eclipse und EclipseLink Johannes Michler Johannes.Michler@promatis.de PROMATIS, Ettlingen Zugriff auf Oracle Datenbanken aus Eclipse RCP Anwendungen via EclipseLink 18.09.2009 1 Gliederung Eclipse als

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

Objektorientierte Datenbanken

Objektorientierte Datenbanken Objektorientierte Datenbanken Vorlesung 9 Sebastian Iwanowski FH Wedel Einführung in das objektrelationale Mapping: JDBC: Java Database Connectivity EJB: Enterprise Java Beans Motivation und Einführung

Mehr

Teil XI Anwendungsprogrammierung

Teil XI Anwendungsprogrammierung Teil XI Anwendungsprogrammierung Anwendungsprogrammierung 1 Programmiersprachenanbindung 2 JDBC 3 SQLJ 4 LINQ 5 Objekt-relationales Mapping 6 Prozedurale SQL-Erweiterungen: SQL/PSM Sattler / Saake Datenbanksysteme

Mehr

RELATIONONALE DATENBANKEN MIT JDBC

RELATIONONALE 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:

Mehr

Client/Server-Programmierung

Client/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

Mehr

Gregor Raschke 2008 HIBERNATE. Eine Einführung

Gregor Raschke 2008 HIBERNATE. Eine Einführung 1 HIBERNATE Eine Einführung Inhalt 2 Einleitung Beispielkonfiguration Die hibernate.cfg.xml Eine Beispieltransaktion Abfragemöglichkeiten JPA und Hibernate Ressourcen und Quellen Einleitung (1) - Geschichtliches

Mehr

Rückblick. SQL bietet viele Möglichkeiten zur Anfrageformulierung

Rückblick. SQL bietet viele Möglichkeiten zur Anfrageformulierung Rückblick SQL bietet viele Möglichkeiten zur Anfrageformulierung mathematische Funktionen (z.b. ABS(A) und SIGN(A)) Aggregatfunktionen (z.b. MIN(A) und SUM(A)) Boole sche Operatoren (AND, OR, EXCEPT) Verknüpfungen

Mehr

Rückblick: Relationale Entwurfstheorie

Rückblick: Relationale Entwurfstheorie Rückblick: Relationale Entwurfstheorie Redundanzen führen zu Anomalien beim Einfügen, Löschen und Ändern Gute Relationenschemata vermeiden Redundanzen und damit Anomalien Funktionale Abhängigkeiten zwischen

Mehr

Cursor erlauben eines zeilenweise Verarbeitung einer Tabelle oder eines Anfrageergebnisses in Transact-SQL

Cursor erlauben eines zeilenweise Verarbeitung einer Tabelle oder eines Anfrageergebnisses in Transact-SQL Cursor Cursor erlauben eines zeilenweise Verarbeitung einer Tabelle oder eines Anfrageergebnisses in Transact-SQL Cursor sind grob vergleichbar mit Iteratoren in modernen Programmiersprachen wie Java;

Mehr

Datenbank und Informationssysteme

Datenbank 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......................

Mehr

Java Database Connectivity-API (JDBC)

Java 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

Mehr

Hibernate. Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen. Nabil janah 1 Hibernate

Hibernate. Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen. Nabil janah 1 Hibernate Hibernate Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen Nabil janah 1 Hibernate Inhalt Hibernate allgemeines Vorteile von Hibernate Hibernate-Architektur

Mehr

Datenbanksysteme. 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 Datenbanksysteme Programmieren von Datenbankzugriffen mit JDBC Burkhardt Renz Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2018 Übersicht Architektur von JDBC Ziele von JDBC Grundstruktur

Mehr

Datenbanksysteme I. Aufgabe 1: Erstellen einer Multimedia-Datenbank. Grundlage sind wiederum bereits implementierte Methoden aus Übungsblatt 6:

Datenbanksysteme I. Aufgabe 1: Erstellen einer Multimedia-Datenbank. Grundlage sind wiederum bereits implementierte Methoden aus Übungsblatt 6: Universität Augsburg, Institut für Informatik Wintersemester 2010/2011 Prof. Dr. W. Kießling 17. Dez. 2010 Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 7 Aufgabe 1: Erstellen einer Multimedia-Datenbank

Mehr

Rückblick: Relationale Normalisierung

Rückblick: Relationale Normalisierung Rückblick: Relationale Normalisierung Gute Relationenschema vermeiden Redundanz und führen nicht zu Anomalien beim Einfügen, Löschen oder Ändern Relationale Normalformen (1NF, 2NF, 3NF, BCNF, 4NF) charakterisieren

Mehr

Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 18. Dez Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 8

Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 18. Dez Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 8 Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 18. Dez. 2009 Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 8 Aufgabe 1: JDBC 2.0 und Scrollable Result Sets Datenbanksysteme

Mehr

Universitä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 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

Mehr

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung 6. Datenintegrität Motivation Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung nur sinnvolle Attributwerte (z.b. keine negativen Semester) Abhängigkeiten

Mehr

Objektorientierte Datenbanken

Objektorientierte Datenbanken OODB 8 Slide 1 Objektorientierte Datenbanken Vorlesung 8 Sebastian Iwanowski FH Wedel OODB 8 Slide 2 Offene Fragen vom letzten Mal: Kann man in einer JDOQL-Anfrage Elemente herausfiltern, deren Attribute

Mehr

Play Framework, MySQL, JPA, HQL, HTML, jquery,

Play Framework, MySQL, JPA, HQL, HTML, jquery, Play Framework, MySQL, JPA, HQL, HTML, jquery, Wer Mit wem Resultat 1.Kunde Schalter: Bibliothekarin Bestimmt,welcher Archivar die Zeitschrift holen geht 2. Schalter: Bibliothekarin Archivar Kontrollübergabe

Mehr

Datenbanksysteme I Übung: JDBC. Jana Bauckmann

Datenbanksysteme 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

Mehr

Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1

Java 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

Mehr

Datenbanken (Übung 12)

Datenbanken (Übung 12) Datenbanken (Übung 12) Prof. Dr.-Ing. Norbert Fuhr Dipl.-Inform. Thomas Beckers (tbeckers@is.inf.uni-due.de) Universität Duisburg-Essen Fachgebiet Informationssysteme 1. 2. Februar 2012 Dipl.-Inform. Thomas

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN 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.

Mehr

11. Datenbankschnittstellen

11. 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

Java-Persistenz-Architekturen. Freiberuflicher Entwickler und Autor. DOAG Konferenz 1.12.

Java-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

Mehr

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1) Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 2. Einführung Java EE 5 Plattform 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 6.

Mehr

Java Database Connectivity. Gracin Denis, IB 4 C

Java Database Connectivity. Gracin Denis, IB 4 C Java Database Connectivity Gracin Denis, IB 4 C Agenda 1. JDBC-Architektur 2. Treiber der JDBC 2.1 Typ-1 Treiber 2.2 Typ-2 Treiber 2.3 Typ-3 Treiber 2.4 Typ-4 Treiber 3. Verbindungsablauf 4. Connection

Mehr

Datenbanken (WS 2015/2016)

Datenbanken (WS 2015/2016) Datenbanken (WS 2015/2016) Klaus Berberich (klaus.berberich@htwsaar.de) Wolfgang Braun (wolfgang.braun@htwsaar.de) 0. Organisatorisches Dozenten Klaus Berberich (klaus.berberich@htwsaar.de) Sprechstunde

Mehr

PHP- Umgang mit Datenbanken (1)

PHP- Umgang mit Datenbanken (1) PHP- Umgang mit Datenbanken (1) Weitere Funktionen zum Umgang mit Datenbanken (Erzeugen, Löschen) und Tabellen (Erzeugen, Löschen) Zum Beispiel für das Erzeugen einer neuen Datenbank $dbname= blumendb

Mehr

AG Datenbanken und Informationssysteme Wintersemester 2006 / 2007

AG 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

Mehr

Multimedia im Netz Wintersemester 2013/14. Übung 02 (Hauptfach)

Multimedia im Netz Wintersemester 2013/14. Übung 02 (Hauptfach) Multimedia im Netz Wintersemester 2013/14 Übung 02 (Hauptfach) Ludwig-Maximilians-Universität München Multimedia im Netz WS 2013/14 - Übung 2-1 PHP und MySQL Es werden mehrere APIs von PHP angeboten um

Mehr

PROGRAMMIERPROJEKT 2016 VERWENDETE TECHNOLOGIEN

PROGRAMMIERPROJEKT 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

Mehr

SQL Tutorium Documentation

SQL 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.........................................

Mehr