Kapitel 5 SQL und Java. Folien zum Datenbankpraktikum Wintersemester 2010/11 LMU München

Größe: px
Ab Seite anzeigen:

Download "Kapitel 5 SQL und Java. Folien zum Datenbankpraktikum Wintersemester 2010/11 LMU München"

Transkript

1 Kapitel 5 SQL und Java Flien zum Datenbankpraktikum Wintersemester 2010/11 LMU München 2010 Thmas Bernecker, Tbias Emrich, Erich Schubert unter Verwendung der Flien des Datenbankpraktikums aus dem Wintersemester 2007/08 vn Dr. Matthias Schubert Übersicht 5.1 SQL-Unterstützung in Java 5.2 Java Database Cnnectivity 5.3 Embedded SQL in Java 5.4 Java Stred Prcedures LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 2

2 Überblick über Java in ORACLE Auf SQL-Daten kann in Java über JDBC und SQLJ zugegriffen werden. Java Stred Prcedures: Es ist möglich Java-Prgramme vn PL/SQL aus und PL/SQL-Przeduren vn Java aus zu starten. Entwicklung verteilter Anwendungen mit Object Request Brkern (ORB/CORBA) und Enterprise JavaBeans (EJB) Unterstützung tüt (wird hier nicht besprchen). Dynamic HTML-Pages durch Servlets und Java Server Pages realisierbar (siehe Vrtrag: Datenbanken und WWW). Als persistent strage über bject-relatinal-mapping (ORM) z.b. mit Hibernate. LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 3 RDBMS und Java Sftware-Entwicklung in Java wird in ORACLE über flgende Schnittstellen unterstützt: Java Database Cnnectivity y( (JDBC): Klassenbiblithek zum kmfrtablen dynamischen Zugriff auf eine (bjekt-)relatinale Datenbank aus Java heraus. Embedded SQL in Java (SQLJ): Erlaubt die direkte Integratin vn statischem SQL in Java hne Benutzung einer Klassenbiblithek. Setzt meist auf JDBC auf und kann mit JDBC kmbiniert werden. Datenbank-Zugriffe sind clientseitig (Java Applikatinen und Applets) und serverseitig (Java Stred Prcedures) ) möglich. Für letztere bietet der Oracle Server eine Laufzeitumgebung (JServer) und persistente Verwaltung an, ähnlich zu den Stred Prcedures in PL/SQL. Standards Versin Oracle 11g unterstützt Java 1.5 / 1.6 und JDBC 4.0 Versin Oracle 10g unterstützt Java 1.4.x und JDBC 3.0 Versin Oracle 9i unterstützt Java 1.3.x und JDBC 2.0 LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 4

3 Übersicht 5.1 SQL-Unterstützung in Java 5.2 Java Database Cnnectivity 5.3 Embedded SQL in Java 5.4 Java Stred Prcedures LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 5 JDBC: Aufbau einer Datenbank-Verbindung (clientseitig) Anmelden der benötigten Packages: imprt java.sql.*; // JDBC-Package Die Packages racle.jdbc.driver.* und racle.sql.* können außerdem für die Verwendung vn Erweiterungen "imprtiert" werden. Dazu $ORACLE_HOME/jdbc/lib/jdbc14.jar in den CLASSPATH legen. JDBC-Treiber laden: Oracle bietet zwei clientseitige JDBC-Treiber an: OCI und Thin. Diese müssen einmalig im Prgramm registriert werden: DriverManager.registerDriver(new racle.jdbc.driver.oracledriver()); Verbindung öffnen (OCI-Client): Wenn ein OCI-Client (Oracle Call Interface) installiert ist, sllte man den schnellen JDBC-OCI-Treiber benutzen. Da dieser plattfrmabhängig ist, funktiniert er allerdings nicht bei Applets. Cnnectin cnn = DriverManager.getCnnectin ("jdbc:racle:ci:@dbprakt","user","passwrd"); Cnnectin cnn = DriverManager.getCnnectin g ("jdbc:racle:ci:@flres.dbs.ifi.lmu.de:1521:dbprakt","user","passwrd"); LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 6

4 Verbindung öffnen (Thin-Client): Der JDBC-Thin-Treiber hingegen ist plattfrmunabhängig. Eine Verbindung flgendermaßen aufgebaut: Aus einer Applikatin: Cnnectin cnn = DriverManager.getCnnectin ("jdbc:racle:thin:@dbprakt","user", "passwrd"); Cnnectin cnn = DriverManager.getCnnectin ti ("jdbc:racle:thin:@flres.dbs.ifi.lmu.de:1521:dbprakt","user","passwrd"); Aus einem signierten Applet: imprt netscape.security.*;... PrivilegeManager.enablePrivilege( enableprivilege("universalcnnect"); Cnnectin cnn = DriverManager.getCnnectin ("jdbc:racle:thin:user/passwrd@dbprakt");... PrivilegeManager.revertPrivilege("UniversalCnnect"); Applet Security: Aufgrund der Hst f rigin -Plitik des Java Sicherheitsmdells dürfen unsignierte Applets nur auf ihren eigenen WWW- Server zugreifen. LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 7 JDBC: Aufbau einer Datenbank-Verbindung (serverseitig) Über den Oracle JServer können Java Methden auch im Datenbankserver gespeichert und ausgeführt werden. Für den serverseitigen JDBC-Treiber und Verbindungsaufbau sind einige Besnderheiten zu beachten. Cnnectin cnn = DriverManager.getCnnectin("jdbc:default:cnnectin"); g Siehe dazu: Oracle Dcumentatin Library, JDBC Develper's Guide and Reference, Kap. 1, Abschnitt: Server-Side Basics. LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 8

5 Absetzen und Verarbeiten vn SQL-Anfragen Instanziieren vn Anweisungen: Auf einer ffenen Verbindung cnn werden Statement-Objekte instanziiert, um SQL- Anweisungen an das DBS zu senden. Statements können wiederverwendet werden: Statement stmt = cnn.createstatement(); Anfragen absetzen: Über das Statement-Objekt stmt kann nun z.b. eine Anfrage abgesetzt werden: ResultSet rset = stmt.executequery ("SELECT * FROM mytable"); Ergebnisse verarbeiten: Abhängig vm Datentyp <Type> der Spalte <cl_nr> können nun die Ergebnisse tupelweise aus dem ResultSet rset (Cursr!) ausgelesen werden: while (rset.next()) System.ut.println (rset.get<type>(<cl_nr>)); Objekte nach Gebrauch schließen (Reihenflge beachten!): rset.clse(); stmt.clse(); cnn.clse(); LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 9 Eine kleine Anfrage: (Beispiele unter $DBPRAKT_HOME/Beispiele/JDBC/ HOME/Beispiele/JDBC/*) imprt java.sql.*; class Emplyee { public static vid main (String args []) thrws SQLExceptin { DriverManager.registerDriver(new racle.jdbc.driver.oracledriver()); Cnnectin cnn = DriverManager.getCnnectin g ("jdbc:racle:ci:@dbprakt", "sctt", "tiger"); Statement stmt = cnn.createstatement(); ResultSet rset = stmt.executequery("select ENAME frm EMP"); while (rset.next()) System.ut.println(rset.getString(1)); rset.clse(); stmt.clse(); cnn.clse(); LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 10

6 Verarbeiten vn ResultSets Navigatin: Der Cursr kann mit der Methde next() des ResultSets geprüft und weitergesetzt werden. JDBC ab Versin 2.0 erlaubt bereits eine weitgehend freie Psitinierung des Cursrs im ResultSet. Datentypen: t Mit den get<type>()-methden werden die Ergebnisse spaltenweise eingelesen. Die Java-Variablen müssen dabei zu den JDBC-Datentypen kmpatibel sein. Die Spalten werden dabei entweder durch ihre Psitin (beginnend mit 1) der durch ihren Namen (als String) identifiziert. INTEGER FLOAT DOUBLE DECIMAL CHAR VARCHAR DATE getint getflat getduble getbigdecimal getstring getdate Kmbinatinen: rt: empfhlen schwarz: möglich LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 11 Verwendung vn Platzhaltern: Platzhalter: entweder als? der benannt als :name (SQLJ) Beispiel: PreparedStatement pstmt = cnn.preparestatement("delete frm test where cl =?"); pstmt.setstring(1,"a"); pstmt.executeupdate(); Vrteile: Weniger Stringperatinen und Parsing-Aufwand Optimierung durch DBMS Weniger Fehleranfällig (String-Serialisierung, Snderzeichen!) Weniger Sicherheitsprbleme (SQL Injectin!) Verwenden bei: Häufigen Statements (wegen Optimierung) Variablen, unsicheren Werten (Fehler, Sicherheit) LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 12

7 Weitere SQL-Anweisungen DDL-Befehle: stmt.executeupdate("create table test(cl varchar2(10))"); stmt.executeupdate("drp table test"); Einfügen, Ändern und Löschen vn Daten: stmt.executeupdate("insert ec teupdate("insert int test values ( A )"); stmt.executeupdate("update test set cl= B where cl= A "); stmt.executeupdate("delete frm test where cl = B "); Vrcmpilierte Anweisungen: PreparedStatement pstmt = cnn.preparestatement("delete frm test where cl =?"); pstmt.setstring(1,"a"); pstmt.executeupdate(); Aufrufen vn Stred Prcedures: CallableStatement cstmt = cnn.preparecall("{ call prc(?) "); cstmt.setint(1,var); cstmt.executeupdate(); LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 13 Allgemeine SQL-Anweisungen: Wenn der Typ der SQL-Anweisung (select, insert, create,...) erst zur Laufzeit bekannt ist, kann man die allgemeinere execute()-methde verwenden: String runtime_stmt; t t... if (stmt.execute(runtime_stmt)) { // runtime_stmt war eine Anfrage rset = stmt.getresultset();... else if (stmt.getupdatecunt() > 0) { // runtime_stmt war ein insert-, update- der delete-befehl... else { // runtime_stmt hat keinen Rueckgabewert (z.b. DDL)... LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 14

8 Transaktinen Aut-Cmmit: Standardmäßig wird jede SQL-Anweisung Anweisung, die über ein Statement abgesetzt wird, als eigenständige Transaktin betrachtet. Wenn mehrere DML- Anweisungen in einer Transaktin geblckt werden sllen, muss man den Aut-Cmmit-Mdus abstellen: cnn.setautcmmit(false); Aut-Cmmit kann reaktiviert werden mit: cnn.setautcmmit(true); Cmmit Transactin: cnn.cmmit(); Rllback Transactin: cnn.rllback(); Daneben gibt es eine Fülle vn Erweiterungen, z.b. zur Verwaltung vn Batch Updates der des Islatin Levels einer Transaktin. LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 15 Fehlerbehandlung Exceptins: JDBC macht Fehlersituatinen des DBMS über Java Exceptins sichtbar: try { // Cde, der eine SQL-Exceptin erzeugt catch(sqlexceptin ex) { System.err.println("SQLExceptin: " + ex.getmessage()); Warnings: Instanzen vn Cnnectin, Statement und ResultSet können SQL-Warnmeldungen erzeugen. Diese werden mit der Methde getwarning() sichtbar: SQLWarning warn = stmt.getwarnings(); if (warn!= null) { System.ut.println("SQLWarning: t " + warn.getmessage()); Warnungen unterbrechen den nrmalen Prgrammlauf nicht. Sie machen auf mögliche Prblemfälle aufmerksam (z.b. DataTruncatin). ) LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 16

9 Übersicht 5.1 SQL-Unterstützung in Java 5.2 Java Database Cnnectivity 5.3 Embedded SQL in Java 5.4 Java Stred Prcedures LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 17 Embedded SQL in Java: SQLJ Entwicklungs- und Laufzeitumgebung zur Einbettung statischer SQL-Befehle in Java Kmpnenten vn SQLJ: SQLJ Translatr: Präcmpiler, der SQLJ-Cde (*.sqlj) in Java Quellcde (*.java) umwandelt und anschließend autmatisch in Java Bytecde cmpiliert (*.class). Aufruf: sqlj <prg>.sqlj SQLJ Runtime: JDBC-basierende Laufzeitumgebung für kmpilierte (*.class) SQLJ-Prgramme. Die SQLJ Runtime Packages werden autmatisch zur Laufzeit benutzt. Aufruf: java <prg> Installatin vn SQLJ: Sämtliche SQLJ-Klassen (100% Java-Cde) befinden sich in der Biblithek $ORACLE_HOME/sqlj/lib/translatr.zip (in den CLASSPATH legen). LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 18

10 Ein kleines Beispiel: (unter $DBPRAKT_HOME/Beispiele/SQLJ/QueryDem.sql sql*) /* Cpyright (c) 1997 Oracle Crpratin */ imprt java.sql.sqlexceptin; imprt racle.sqlj.runtime.oracle; imprt sqlj.runtime.ref.defaultcntext; #sql cntext QueryDemCtx; // Cnnectin-Kntext #sql iteratrt SalByName(Duble sal, String ename); // Cursr 1 #sql iteratr SalByPs(Duble sal, String ename); // Cursr 2 public class QueryDem { LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 19 public static vid main(string[] args) thrws SQLExceptin { if (args.length!= 2) { System.ut.println("usage: QueryDem ename newsal"); System.exit(1); exit(1); // Verbindung auf die Datenbank über die im File "cnnect.prpeties" // abgelegten Infrmatinen, Cnnectin String, User, Passwrd vgl. JDBC Oracle.cnnect(QueryDem.class, "cnnect.prperties"); // Cnnectin-Kntext-Objekt erzeugen (zur Nutzung vn Methden der aktuellen Cnnectin) QueryDemCtx ctx = new QueryDemCtx(DefaultCntext.getDefaultCntext().getCnnectin()); String ename = args[0]; int newsal = Integer.parseInt(args[1]); System.ut.println("befre update:"); getsalbyname(ename, ctx); getsalbyps(ename); LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 20

11 updatesal(ename, newsal, ctx); System.ut.println("after update:"); getsalbycall(ename, ctx); getsalbyint(ename); ctx.clse(ctx.keep_connection); public static vid getsalbyname(string ename, QueryDemCtx ctx) thrws SQLExceptin { SalByName iter = null; #sql [ctx] iter = {SELECT ename, sal FROM emp WHERE ename = :ename; while (iter.next()) printsal(iter.ename(), iter.sal()); iter.clse(); LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 21 public static vid getsalbyps(string ename) thrws SQLExceptin { SalByPs iter = null; Duble sal = new Duble(0); #sql iter = {SELECT ename, sal FROM emp WHERE ename = :ename; while (true) { #sql {FETCH :iter INTO :ename, :sal; if (iter.endfetch()) break; printsal(ename, sal); iter.clse(); public static vid updatesal(string ename, int newsal, QueryDemCtx ctx) thrws SQLExceptin { #sql [ctx] {UPDATE emp SET sal = :newsal WHERE ename = :ename; LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 22

12 public static vid getsalbycall(string ename, QueryDemCtx ctx) thrws SQLExceptin { Duble sal = new Duble(0); #sql [ctx] sal = {VALUES(get_sal(:ename)); printsal(ename, sal); public static vid getsalbyint(string ename) thrws SQLExceptin { Duble sal = new Duble(0); #sql {SELECT sal INTO :sal FROM emp WHERE ename = :ename; printsal(ename, sal); public static vid printsal(string ename, Duble sal) { System.ut.println("salary f "+ ename +" is "+ sal.dublevalue()); LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 23 Übersicht 5.1 SQL-Unterstützung in Java 5.2 Java Database Cnnectivity 5.3 Embedded SQL in Java 5.4 Java Stred Prcedures LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 24

13 Java Stred Prcedures: Eigenschaften Die ORACLE Java Virtual Machine ist eigene JVM im DB-Server. Kmpnenten wie Garbage Cllectin und Class Lader sind auf die Serverumgebung abgestimmt. Prinzipiell sind alle Java-Methden aufrufbar (Ausnahme: GUI-Prgramme). D.h. Java Stred Prcedures als Functins, Prcedures, Trigger, PL/SQL- Unterprgramme und Packages. Objektrelatinale User-Defined Datatypes (siehe Kapitel 6) können ebenfalls unter Java angesprchen werden. Die geschieht über explizites Mapping der über das Interface Struct, das ein Standard-Mapping bereitstellt. Java-Klassen können vn PL/SQL und SQL aus angesprchen werden. Hierzu müssen die Klassen über sgenannte Call Specs im Data-Dictinary publiziert werden. LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 25 Schritte zum Aufruf einer Java Stred Prcedure: Erstellen der Java-Klasse auf dem Clientrechner: public class Hell { public static String wrld () { return "Hell wrld"; Kmpilieren auf Clientrechner: > javac Hell.java Laden des generierten Class-Files in den DB-Server mit ladjava. > ladjava -user sctt/tiger Hell.class LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 26

14 Für Methden die in ORACLE direkt aufgerufen werden sllen werden Call Specs angelegt. Dies ist nur für Tp-Level-Methden erfrderlich. Klassen die vn anderen Klassen verwendet werden brauchen nicht publiziert werden. SQL> cnnect sctt/tiger cnnected SQL> create r replace functin HELLOWORLD return VARCHAR2 as 2 language java name 'Hell.wrld () return java.lang.string'; 3 / Functin created. Aufruf der Prcedure SQL> variable mystring varchar2[20]; SQL> call HELLOWORLD() int :mystring; Call cmpleted. SQL> print mystring; MYSTRING Hell wrld SQL> LMU München Flien zum Datenbankpraktikum Wintersemester 2010/11 27

Kapitel 5 SQL und Java

Kapitel 5 SQL und Java Kapitel 5 SQL und Java Flien zum Datenbankpraktikum Wintersemester 2012/13 LMU München 2008 Thmas Bernecker, Tbias Emrich 2010 Tbias Emrich, Erich Schubert unter Verwendung der Flien des Datenbankpraktikums

Mehr

SQL und Java. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

SQL und Java. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München Kapitel 5 SQL und Java Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München 2008 Thomas Bernecker, Tobias Emrich unter Verwendung der Folien des Datenbankpraktikums aus dem Wintersemester 2007/08

Mehr

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Dynamisches 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

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

Oracle: Abstrakte Datentypen:

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

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

seit Java 1.1 Bestandteil der API: packages java.sql, javax.sql

seit 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

Mehr

Kapitel 8 Verteilte Datenbanken

Kapitel 8 Verteilte Datenbanken Kapitel 8 Verteilte Datenbanken Flien zum Datenbankpraktikum Wintersemester 2012/13 LMU München 2008 Thmas Bernecker, Tbias Emrich 2010 Tbias Emrich, Erich Schubert unter Verwendung der Flien des Datenbankpraktikums

Mehr

Universität Stuttgart Abteilung Anwendersoftware 01.07.2002. - Steht für Embedded SQL in Java. - Java-Methoden als SQL Stored-Procedures

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

Mehr

SQLJ. Standardisierte Java-DB. DB-Schnittstelle. Spezifikationen. Oracle, IBM, Informix, Sybase,, Tandem, Sun, Microsoft stehen dahinter

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

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

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

Kapitel 6 Objektrelationale Datenbanken

Kapitel 6 Objektrelationale Datenbanken Kapitel 6 Objektrelatinale Datenbanken Flien zum Datenbankpraktikum Wintersemester 2012/13 LMU München 2008 Thmas Bernecker, Tbias Emrich 2010 Tbias Emrich, Erich Schubert unter Verwendung der Flien des

Mehr

Prozedurale Datenbank- Anwendungsprogrammierung

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

Mehr

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Folgendes PL/SQL Codefragment zeigt das grundlegende Statement für diesen Test: Java. http://www.trivadis.com/images/javaperf_tcm16-7133.

Folgendes 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

Mehr

Datenbanken für Online Untersuchungen

Datenbanken für Online Untersuchungen Datenbanken für Online Untersuchungen Im vorliegenden Text wird die Verwendung einer MySQL Datenbank für Online Untersuchungen beschrieben. Es wird davon ausgegangen, dass die Untersuchung aus mehreren

Mehr

Kapitel 4 Dynamisches SQL

Kapitel 4 Dynamisches SQL Kapitel 4 Dynamisches SQL Flien zum Datenbankpraktikum Wintersemester 2010/11 LMU München 2008 Thmas Bernecker, Tbias Emrich unter Verwendung der Flien des Datenbankpraktikums aus dem Wintersemester 2007/08

Mehr

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009

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

Mehr

Abgestimmte Kennwortrichtlinien

Abgestimmte Kennwortrichtlinien Abgestimmte Kennwrtrichtlinien Maik Görlich In Active Directry Dmänen unter Windws 2000 Server und Windws Server 2003 knnte jeweils nur eine einheitliche Kennwrtrichtlinie und eine Kntsperrungsrichtlinie

Mehr

Kapitel 8 Verteilte Datenbanken. Folien zum Datenbankpraktikum Wintersemester 2010/11 LMU München

Kapitel 8 Verteilte Datenbanken. Folien zum Datenbankpraktikum Wintersemester 2010/11 LMU München Kapitel 8 Verteilte Datenbanken Flien zum Datenbankpraktikum Wintersemester 2010/11 LMU München 2008 Thmas Bernecker, Tbias Emrich unter Verwendung der Flien des Datenbankpraktikums aus dem Wintersemester

Mehr

SQL (Structured Query Language) Schemata Datentypen

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

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

MCRServlet Table of contents

MCRServlet Table of contents Table of contents 1 Das Zusammenspiel der Servlets mit dem MCRServlet... 2 1 Das Zusammenspiel der Servlets mit dem MCRServlet Als übergeordnetes Servlet mit einigen grundlegenden Funktionalitäten dient

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

Kapitel 4 Dynamisches SQL

Kapitel 4 Dynamisches SQL Kapitel 4 Dynamisches SQL Flien zum Datenbankpraktikum Wintersemester 2012/13 LMU München 2008 Thmas Bernecker, Tbias Emrich 2010 Tbias Emrich, Erich Schubert unter Verwendung der Flien des Datenbankpraktikums

Mehr

3. Stored Procedures und PL/SQL

3. Stored Procedures und PL/SQL 3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In

Mehr

Gesicherte Prozeduren

Gesicherte Prozeduren Gesicherte Prozeduren Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln zurückgeliefert.

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

Datenmanagement in Android-Apps. 16. Mai 2013

Datenmanagement 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

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Übung 1 mit C# 6.0 MATTHIAS RONCORONI

Übung 1 mit C# 6.0 MATTHIAS RONCORONI Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,

Mehr

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

Mehr

Windows 7 / Vista startet nicht nach Installation von Windows XP

Windows 7 / Vista startet nicht nach Installation von Windows XP Windws 7 / Vista startet nicht nach Installatin vn Windws XP - Um weiterhin Sicherheitsupdates fur Windws zu erhalten, mussen Sie Windws Vista mit Service Pack 2 (SP2) ausfuhren. Weitere Infrmatinen finden

Mehr

So greifen Sie über WebDAV auf Dateien auf dem Extranet der Pfimi Kirche Waldau zu

So greifen Sie über WebDAV auf Dateien auf dem Extranet der Pfimi Kirche Waldau zu S greifen Sie über WebDAV auf Dateien auf dem Extranet der Pfimi Kirche Waldau zu Überblick WebDAV ist eine Erweiterung vn HTTP, mit der Benutzer auf Remte-Servern gespeicherte Dateien bearbeiten und verwalten

Mehr

Beispiel: DB-Mock (1/7)

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

Mehr

Zählen von Objekten einer bestimmten Klasse

Zählen von Objekten einer bestimmten Klasse Zählen von Objekten einer bestimmten Klasse Ziel, Inhalt Zur Übung versuchen wir eine Klasse zu schreiben, mit der es möglich ist Objekte einer bestimmten Klasse zu zählen. Wir werden den ++ und den --

Mehr

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Java Kurs für Anfänger Einheit 4 Klassen und Objekte Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003 Page 1 of 8 SMTP Konfiguration von Exchange 2003 Kategorie : Exchange Server 2003 Veröffentlicht von webmaster am 25.02.2005 SMTP steht für Simple Mail Transport Protocol, welches ein Protokoll ist, womit

Mehr

MaxDB Einführung in die Installation und Nutzung von MaxDB (Version 7.5.0.5)

MaxDB Einführung in die Installation und Nutzung von MaxDB (Version 7.5.0.5) MaxDB Einführung in die Installation und Nutzung von MaxDB (Version 7.5.0.5) Hinweise: Diese Installation bezieht sich auf die Version 7.5.0.5, bei Nachfolgern kann sich einiges ändern Herunter geladen

Mehr

desk.modul : WaWi- Export

desk.modul : WaWi- Export desk.modul : WaWi- Export Die Schnittstelle besteht aus einem Programm, welches die Daten aus der OfficeLine ausliest und in eine XML-Datei exportiert. Die Schnittstelle ist als ein eigenständiges Programm

Mehr

Typumwandlungen bei Referenztypen

Typumwandlungen bei Referenztypen Typumwandlungen bei Referenztypen Genau wie es bei einfachen Typen Typumwandlungen gibt, gibt es auch bei Referenztypen Umwandlungen von einem Referenztypen in einen anderen Referenztypen, die wie bei

Mehr

Prozessarchitektur einer Oracle-Instanz

Prozessarchitektur einer Oracle-Instanz 6. Juni 2008 Inhaltsverzeichnis Oracle Instanz 1 Oracle Instanz 2 3 Redo Log Buffer Shared Pool Java Pool & Large Pool Oracle Instanz Eine Oracle-Instanz ist Hauptbestandteil des Oracle Datenbank Management

Mehr

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

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

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {

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

Datenbanksysteme SS 2007

Datenbanksysteme SS 2007 Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 9c: Datenbankapplikationen Architektur einer Web-Applikation mit Servlets, JSPs und JavaBeans

Mehr

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH MORE Profile Pass- und Lizenzverwaltungssystem erstellt von: Thorsten Schumann erreichbar unter: thorsten.schumann@more-projects.de Stand: MORE Projects GmbH Einführung Die in More Profile integrierte

Mehr

Whitepaper. Produkt: combit Relationship Manager. Einbindung externer FiBu-/Warenwirtschaftsdaten. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager. Einbindung externer FiBu-/Warenwirtschaftsdaten. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Einbindung externer FiBu-/Warenwirtschaftsdaten Einbindung externer FiBu-/Warenwirtschaftsdaten - 2 - Inhalt Ausgangssituation

Mehr

The Cable Guy: Dynamische DNS-Aktualisierung in Windows 2000

The Cable Guy: Dynamische DNS-Aktualisierung in Windows 2000 The Cable Guy: Dynamische DNS-Aktualisierung in Windws 2000 (Engl. Originaltitel: The Cable Guy: DNS Dynamic Update in Windws 2000) DNS (Dmain Name System) unterstützt einen Mechanismus zum Auflösen vn

Mehr

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle

Mehr

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Datensatzhistorie mit dem SQL Server 2000 und 2005 Datensatzhistorie mit dem SQL Server 2000 und 2005-2 - Inhalt

Mehr

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

Relationales 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

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

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

Delegatesund Ereignisse

Delegatesund Ereignisse Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses

Mehr

2. Datenbank-Programmierung

2. Datenbank-Programmierung 2. Datenbank-Programmierung SQL ist eingeschränkt bezüglich der algorithmischen Mächtigkeit, z.b. Berechnung einer transitiven Hülle ist in Standard-SQL nicht möglich. Die Einschränkung ist von Bedeutung

Mehr

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering 5 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger OPTSWE_SWE: 5 Programmentwicklung

Mehr

Software Maintenance - Musterlösung zum Übungsblatt 1

Software Maintenance - Musterlösung zum Übungsblatt 1 Software Maintenance - Musterlösung zum Übungsblatt 1 Beispiel 1) Kosten für 12 Monate: Kosten altes Produkt: 1000 * 12 = 12000 Kosten Neuentwicklung: 1000 Wartung des alten Produktes während der Entwicklung

Mehr

6.9 Java Server Pages

6.9 Java Server Pages DocumentCollection dc = db.ftsearch(abfrage); Document d = dc.getfirstdocument(); while (d!= 0) { String Name = db.gettitle(); out.println(name + ""); d = dc.getnextdocument(); catch (NotesException

Mehr

Übungen zu Softwaretechnik

Übungen zu Softwaretechnik Prof. Dr. Dr. h.c. M. Broy Lösungsblatt 11 Dr. H. Ehler, S. Wagner 23. Januar 2004 Übungen zu Softwaretechnik Aufgabe 16 Qualitätseigenschaften Broker-Pattern Beurteilen Sie das in Aufgabe 15 benutzte

Mehr

Melde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei

Melde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei Seite 1 Melde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei Seite 2 1 Inhalt Melde- und Veröffentlichungsplattform Portal... 1 (MVP Portal)... 1 Hochladen einer XML-Datei...

Mehr

Testen mit JUnit. Motivation

Testen mit JUnit. Motivation Test First Design for Test in Eclipse (eigentlich: ) zu einer Klasse Beispiel zur Demonstration Ergänzungen Test First "Immer dann, wenn Du in Versuchung kommst, etwas wie eine print- Anweisung oder einen

Mehr

Step by Step Softwareverteilung unter Novell. von Christian Bartl

Step by Step Softwareverteilung unter Novell. von Christian Bartl Step by Step Softwareverteilung unter Novell von Softwareverteilung unter Novell 1) Starten von einfachen *.EXE-Dateien: Starten sie ConsoleOne Erstellen sie eine eigene Organisationseinheit für ihre Anwendungen

Mehr

Große Übung Praktische Informatik 1

Große Übung Praktische Informatik 1 Große Übung Praktische Informatik 1 2005-12-08 fuessler@informatik.uni-mannheim.de http://www.informatik.uni-mannheim.de/pi4/people/fuessler 1: Announcements / Orga Weihnachtsklausur zählt als Übungsblatt,

Mehr

Sichtbarkeit & statische Methoden. Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben

Sichtbarkeit & statische Methoden. Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben Sichtbarkeit & statische Methoden Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben Nicht sichtbare Methoden Wollen Eltern bestimmte Methoden vor den

Mehr

Studentische Lösung zum Übungsblatt Nr. 7

Studentische Lösung zum Übungsblatt Nr. 7 Studentische Lösung zum Übungsblatt Nr. 7 Aufgabe 1) Dynamische Warteschlange public class UltimateOrderQueue private Order[] inhalt; private int hinten; // zeigt auf erstes freies Element private int

Mehr

Themen. Web Service - Clients. Kommunikation zw. Web Services

Themen. Web Service - Clients. Kommunikation zw. Web Services Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur

Mehr

Der lokale und verteilte Fall

Der lokale und verteilte Fall Lokale Beans Der lokale und verteilte Fall RemoteClient Lokaler Client (JSP) RemoteSession/Entity-Bean Lokale Session/Entity-Bean 2 Lokale Beans Die bisher vorgestellten EJBswaren immer in der Lage auf

Mehr

Programmieren II. Beispiele für RDBMS. Relationale Datenbanken. Datenbanken SQL. Dr. Klaus Höppner JDBC. Hochschule Darmstadt SS 2008

Programmieren 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)

Mehr

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur

Mehr

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 Kapitel 33 Der xml-datentyp In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 995 996 Kapitel 33: Der xml-datentyp Eine der wichtigsten

Mehr

Einführung in Javadoc

Einführung in Javadoc Einführung in Javadoc Johannes Rinn http://java.sun.com/j2se/javadoc Was ist Javadoc? Javadoc ist ein Werkzeug, dass eine standardisierte Dokumentation für die Programmiersprache Java unterstützt. Vorteil:

Mehr

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Übersicht Struts Forms Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Allgemeines Autor: Sascha Wolski http://www.laliluna.de/tutorials.html

Mehr

f Link Datenbank installieren und einrichten

f Link Datenbank installieren und einrichten f Link Datenbank installieren und einrichten Dokument-Version 1.1 20.08.2011 Programm-Version 1.0 und höher Autor Dipl.-Ing. Thomas Hogrebe, tommic GmbH Inhalt Versionshistorie... 1 Über dieses Dokument...

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

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

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 6: Datenbankabfragen mit SQL und PHP. Stand: 24.11.2014. Übung WS 2014/2015

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

Mehr

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Aufgabe 1: Projektion Datenbanksysteme I π A1,...,A n (π B1,...,B

Mehr

Java Application 1 Java Application 2. JDBC DriverManager. JDBC-ODBC Br idge. ODBC Driver Manager. Dr iver C. Dr iver D.

Java 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

Mehr

Hinweise zur Installation von MySQL

Hinweise zur Installation von MySQL Hinweise zur Installation von MySQL Im Folgenden werden einige Hinweise gegeben, die die Einrichtung einer MySQL-Lernumgebung am eigenen Windows-Rechner erleichtern sollen. Der Text ist vor allem für diejenigen

Mehr

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

Mehr

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur Unterprogramme Unterprogramme sind abgekapselte Programmfragmente, welche es erlauben, bestimmte Aufgaben in wiederverwendbarer Art umzusetzen. Man unterscheidet zwischen Unterprogrammen mit Rückgabewert

Mehr

Pakete dienen dazu, die Software eines Projektes in größere inhaltlich zusammengehörige Bereiche mit eigenem Namen einzuteilen (siehe Java API).

Pakete dienen dazu, die Software eines Projektes in größere inhaltlich zusammengehörige Bereiche mit eigenem Namen einzuteilen (siehe Java API). Paketdeklaration Paketdeklaration package Bezeichner ; Pakete dienen dazu, die Software eines Projektes in größere inhaltlich zusammengehörige Bereiche mit eigenem Namen einzuteilen (siehe Java API). Ein

Mehr

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 -

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 - Matrix42 Use Case - Sicherung und Rücksicherung persönlicher Version 1.0.0 23. September 2015-1 - Inhaltsverzeichnis 1 Einleitung 3 1.1 Beschreibung 3 1.2 Vorbereitung 3 1.3 Ziel 3 2 Use Case 4-2 - 1 Einleitung

Mehr

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm

Mehr

cs241: Datenbanken mit Übungen HS 2011

cs241: Datenbanken mit Übungen HS 2011 UNIVERSITÄT BASEL Prof. Dr. Heiko Schuldt MSc. Nenad Stojnić BSc. Ivan Giangreco BSc. Florian Lindörfer cs241: Datenbanken mit Übungen HS 2011 Übung 5 Abgabe bis: 4.11.2011 Hinweise: Modalitäten der Abgabe:

Mehr

Wie kommen die Befehle zum DBMS

Wie 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?

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

Import und Export von Übergängern

Import und Export von Übergängern Import und Export von Übergängern SibankPLUS bietet Ihnen eine komfortable Schnittstelle, um den Wechsel der Schüler nach der Stufe 4 von der Grundschule auf eine weiterführende Schule zu verarbeiten.

Mehr

Factory Method (Virtual Constructor)

Factory Method (Virtual Constructor) Factory Method (Virtual Constructor) Zweck: Definition einer Schnittstelle für Objekterzeugung Anwendungsgebiete: Klasse neuer Objekte bei Objekterzeugung unbekannt Unterklassen sollen Klasse neuer Objekte

Mehr

WPF Steuerelemente Listbox, ComboBox, ListView,

WPF Steuerelemente Listbox, ComboBox, ListView, WPF Steuerelemente Listbox, ComboBox, ListView, Dr. Beatrice Amrhein Überblick Einführung Listen ComboBox Tabellen 2 Einführung 3 Listen- und Tabellen-Elemente Listen und Tabellen-Elemente sind Steuerelemente,

Mehr

Javakurs 2013 Objektorientierung

Javakurs 2013 Objektorientierung Javakurs 2013 Objektorientierung Objektorientierte Programmierung I Armelle Vérité 7 März 2013 Technische Universität Berlin This work is licensed under the Creative Commons Attribution-ShareAlike 3.0

Mehr

1. Zugriff auf das Lonza Netzwerk von ihrem privaten PC oder von einem Internet Café

1. Zugriff auf das Lonza Netzwerk von ihrem privaten PC oder von einem Internet Café SSL VPN verwenden mit nicht-lonza PCs 1. Zugriff auf das Lonza Netzwerk von ihrem privaten PC oder von einem Internet Café Für das Arbeiten von zu Hause oder aus einem Internet Café können Sie Ihren Browser

Mehr

3 Richtlinienbasierte Verwaltung und Multi-Server- Administration

3 Richtlinienbasierte Verwaltung und Multi-Server- Administration Richtlinienbasierte Verwaltung und Multi-Server-Administration 3 Richtlinienbasierte Verwaltung und Multi-Server- Administration SQL Server Management Studio bietet eine Reihe von Unterstützungsmöglichkeiten,

Mehr

IPETRONIK TESTdrive SDK V02.00

IPETRONIK TESTdrive SDK V02.00 TESTdrive SDK V02.00 Übersicht Kundenspezifische Erweiterungen möglich Unabhängige Entwicklungen von TESTdrive-Kernsystem (Releases) Eigenständige Erweiterungen durch den Kunden selbst Nutzung von bestehenden

Mehr