Datenbank-Programmierung mit JDBC Weiterbildungsmaßnahme Technische und Praktische Informatik Sommersemester 2003

Größe: px
Ab Seite anzeigen:

Download "Datenbank-Programmierung mit JDBC Weiterbildungsmaßnahme Technische und Praktische Informatik Sommersemester 2003"

Transkript

1 Datenbank-Programmierung mit JDBC Weiterbildungsmaßnahme Technische und Praktische Informatik Sommersemester 2003 BTU Cottbus Dipl-Inf Gunar Fiedler 1 Motivation für JDBC Auf dem Markt existiert eine Vielzahl verschiedener relationaler DBM-Systeme Sie alle (bzw die meisten) haben eines gemeinsam: sie sprechen SQL, dh sie sind in der Lage, in SQL formulierte Anfragen und Update-Anweisungen zu verarbeiten Möchte man als Applikationsentwickler diese Funktionalität nutzen, muss das Programm SQL-Anweisungen generieren und an das Datenbank-Management-System schicken Der Programmierer steht dabei aber vor dem Problem, dass für die einzelnen Systeme über die Zeit hinweg unabhängig voneinander unterschiedliche Zugriffsmechanismen entwickelt wurden Dies bedingt, dass man sich schon zu Beginn eines Softwareprojekts auf ein bestimmtes DBMS, ja sogar auf eine bestimmte Version festlegen müsste Ein Wechsel des verwendeten DBMS bedeutet in diesem Fall umfangreiche Änderungen im Code der Applikation Dem Credo der Datenbanken folgend sollte es aber möglich sein, die Verarbeitungslogik der Anwendung so weit wie möglich von der Datenbank abzukoppeln Um dies zu erreichen, bedient man sich einer Treiber-Architektur Die Anwendung wird von der Datenbank durch eine weitere Softwarekomponente, Treiber genannt, getrennt Ein Treiber stellt der Anwendung eine für alle DBMS einheitlich definierte Schnittstelle zur Verfügung und implementiert intern die Protokolle für ein ganz bestimmtes System Soll nun das DBMS ausgetauscht werden, so muss lediglich ein anderer Treiber in die Anwendung eingebunden werden Umgedreht ist der Treiber unabhängig von der Applikationslogik und kann auch in anderen Anwendungen wiederverwendet werden Mit der Java Database Connectivity, kurz JDBC, steht Java-Programmierern eine standardisierte Umgebung für den Zugriff auf beliebige relationale Datenbanken zur Verfügung Zu diesem Zweck definiert JDBC eine Reihe von Schnittstellen und Mechanismen, die automatisch in allen Java-Entwicklungs- und Laufzeitumgebungen zur Verfügung stehen

2 2 Grundgerüst eines JDBC-basierten Programms JDBC-Grundlagen Applikationslogik JDBC- Treiber JDBC- Treiber JDBC- Treiber ODBC- Treiber Sybase Oracle CSV-Datei Abbildung 1: Aufbau einer JDBC-basierten Applikation 2 Grundgerüst eines JDBC-basierten Programms Abbildung 1 zeigt den Grobaufbau einer JDBC-basierten Applikation Sie besteht aus 3 Schichten: Applikationslogik: Sie definiert die Verarbeitungsregeln der Geschäftsprozesse JDBC-Datenbanktreiber: Er kapselt die Spezifika des Datenbanksystems und stellt der Applikationslogik die Daten der Datenbank mit Hilfe einer standardisierten Schnittstelle zur Verfügung Datenbank: Speichert die Daten Der Treiber kommuniziert mit der Datenbank über ein DBMS-spezifisches Protokoll Aus Sicht des Java-Programmierers ist ein JDBC-Datenbanktreiber ein Package bestehend aus einer Reihe von Klassen Die Klassen implementieren die Interfaces des Standard-Packages javasql Diese Interfaces erlauben das datenbankunabhängige Programmieren mit Hilfe von JDBC: die Anwendung sieht nur ein javasql- Interface, welche Klasse aus welchem Treiber letztlich instanziiert wurde, bleibt verborgen 2 SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus

3 JDBC-Grundlagen 2 Grundgerüst eines JDBC-basierten Programms Der Zugriff auf eine Datenbank über JDBC innerhalb eines Java-Programms lässt sich in einzelne Phasen aufteilen, die nacheinander ausgeführt werden müssen, Abbildung 2 zeigt eine Übersicht Laden des Treibers Herstellen der Verbindung zum DBMS Erzeugen eines Statement-Objekts Ausführen einer Anfrage Ausführen eines Updates Auswertung der Ergebnisse Schließen der Verbindung Abbildung 2: Phasen des Datenbankzugriffs 1 Laden des Treibers: In dieser Phase werden die Klassen des JDBC - Treibers dynamisch in die Anwendung eingebunden und registriert 2 Herstellen der Verbindung: Der Treiber baut eine Verbindung zum DBMS auf 3 Erzeugen eines Statements: Statements sind die JDBC-Repräsentation für SQL-Anweisungen Bevor ei- SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus 3

4 3 Die Phasen im Detail JDBC-Grundlagen ne SQL-Anfrage gestartet werden kann, muss sie in ein Statement verpackt werden 4 Ausführen des Statements: Die SQL-Anfrage wird an das DBMS übermittelt und dort ausgeführt Die Resultate werden zurückgeliefert 5 Auswertung der Ergebnisse: Über die Methoden des Interfaces javasqlresultset kann das Ergebnis einer Anfrage ausgewertet werden 6 Schließen der Verbindung: um nicht weiter benötigte Ressourcen freizugeben 3 Die Phasen im Detail Dieser Abschnitt verdeutlicht die einzelnen Phasen eines JDBC-Zugriffs anhand von Codebeispielen und Abbildungen Grundlage bildet wieder unsere 3-Schichten- Anwendung: Applikationslogik Sybase-Treiber Sybase 31 Laden des Treibers Wie bereits angedeutet, ist ein JDBC-Datenbanktreiber nichts anderes als ein Package diverser Java-Klassen, welche die Interfaces aus javasql implementieren Jeder Treiber enthält als Repräsentanten eine Hauptklasse Über diese Klasse wird der Treiber identifiziert und angesprochen Eine zentrale JDBC-Komponente ist der Treibermanager Er wird durch die Klasse javasqldrivermanager repräsentiert und ist zuständig für die Verwaltung und den Zugriff auf die Datenbanktreiber Ein Treiber steht der Anwendung erst zur Verfügung, wenn er sich beim Treibermanager registriert hat 4 SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus

5 JDBC-Grundlagen 3 Die Phasen im Detail Das dynamische Laden eines Treibers gestaltet sich genauso wie das Laden jeder anderen beliebigen Java-Klasse Angenommen, wir möchten den Treiber für Sybase-Datenbanken laden Die Hauptklasse des JDBC-Treibers hat den Namen comsybasejdbc2jdbcsybdriver: t r y C l a s s forname ( com s y b a s e j d b c 2 j d b c S y b D r i v e r ) ; catch ( ClassNotFoundException e ) // F e h l e r b e h a n d l u n g, f a l l s K l a s s e n i c h t gefunden wurde Die Treiberklasse sorgt automatisch für eine Registrierung beim Treibermanager Das Laden des Treibers muss nur einmal während der Initialisierungsphase durchgeführt werden, der Treiber steht bis zum Ende der Applikation zur Verfügung: Applikationslogik Sybase-Treiber Sybase 32 Herstellen der Verbindung Nachdem der Datenbank-Treiber in die Anwendung integriert wurde, kann die Verbindung zur Datenbank geöffnet werden Dafür sind die folgenden Informationen von Bedeutung: Welcher Treiber soll benutzt werden? Wie heißt die Datenbank und wo befindet sie sich? Mit welchen Daten authentifiziere ich mich gegenüber der Datenbank? SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus 5

6 3 Die Phasen im Detail JDBC-Grundlagen Das Öffnen der Verbindung wird durch den Treibermanager und dessen statische Methode getconnection() veranlasst Diese Methode liefert ein Objekt zurück, dessen Klasse das Interface javasqlconnection implementiert Die oben genannten Daten werden der Methode in Form einer URL (uniform resource locator) übergeben Diese URL hat die folgende standardisierte Form: jdbc:<subprotocol>:<suburl> Über die Zeichenkette <subprotocol> wird der gewünschte Treiber spezifiziert Der Inhalt von <suburl> hängt vom konkreten Treiber ab Der Sybase-Treiber erwartet beispielsweise folgende URL: jdbc:sybase:tds:<host>:<port>/<database>?<parameter> Die Kombination aus <host> und <port> gibt dabei den Server an, auf dem sich die Datenbank befindet, <database> spezifiziert den Namen der Datenbank Zusätzliche Parameter können in der Form <name>=<wert> nach dem Fragezeichen angegeben werden Möglich sind zb die Authentifizierungsdaten (user und password), auch der Name der Datenbank kann alternativ als Parameter servicename übergeben werden Angenommen, der Nutzer joe (Passwort: foo) möchte die Sybase-Datenbank namens Personal auf dem Rechner dbserver nutzen Das DBMS ist über Port 1234 erreichbar Es gibt 3 verschiedene Varianten der DriverManagergetConnection-Methode: DriverManagergetConnection(String url): Der allgemeine Fall Alle Daten müssen gemäß der oben genannten Vorschrift in eine URL verpackt werden: S t r i n g u r l = j d b c s y b a s e : Tds : d b s e r v e r : / P e r s o n a l? u s e r=j o e&password=foo ; Connection conn = DriverManager g e t C o n n e c t i o n ( u r l ) ; DriverManagergetConnection(String url, Properties info): Der Methode wird zusätzlich ein assoziatives Array info übergeben, welches die Parameter aufnehmen kann, die normalerweise nach dem Fragezeichen der URL stehen würden Sinnvoll ist diese Trennung, wenn diese Parameter dynamisch generiert werden Dann entfällt die umständliche Kodierung der URL: P r o p e r t i e s props = new P r o p e r t i e s ( ) ; props put ( u s e r, j o e ) ; props put ( password, foo ) ; props put ( s e r v i c e n a m e, P e r s o n a l ) ; S t r i n g u r l = j d b c : s y b a s e : Tds : d b s e r v e r :1234 ; 6 SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus

7 JDBC-Grundlagen 3 Die Phasen im Detail Connection conn = DriverManager g e t C o n n e c t i o n ( u r l, props ) ; DriverManagergetConnection(String url, String user, String password): Analog zur 2 Variante, falls als Parameter nur Nutzername und Passwort benötigt werden: S t r i n g u r l = j d b c s y b a s e : Tds : d b s e r v e r :1234/ P e r s o n a l ; Connection conn = DriverManager g e t C o n n e c t i o n ( u r l, j o e, foo ) ; Nach Abschluss dieser Phase besteht eine Kommunikationsverbindung zwischen Applikation und der Datenbank: Applikationslogik Sybase-Treiber Sybase 33 Erzeugen eines Statements SQL-Anfragen werden unter JDBC in Statement-Objekte eingekapselt Bevor eine Anfrage ausgeführt werden kann, muss ein derartiges Objekt erzeugt werden Dies geschieht durch Aufruf der createstatement-methode des im vorherigen Schritt erzeugten Connection-Objekts: Statement stmt = conn c r e a t e S t a t e m e n t ( ) ; SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus 7

8 3 Die Phasen im Detail JDBC-Grundlagen Applikationslogik Sybase-Treiber stmt Sybase Neben einfachen SQL-Anfragen, wie wir sie hier betrachten, können über Statement- Objekte auch spezielle vorcompilierte Anfragen (prepared statements) und stored procedures ausgeführt werden Außerdem lässt sich über die Statement-Objekte die Rückgabe des Ergebnisses steuern Zu beachten ist: ein einzelnes Statement kann nicht mehrere SQL-Anfragen gleichzeitig verwalten Ergebnisse müssen verarbeitet werden, bevor eine neue Anfrage gestellt wird 34 Ausführen eines Statements Das Statement-Objekt stellt Methoden zum Ausführen von SQL-Anweisungen bereit Aufgrund der unterschiedlichen Bedürfnisse werden zwei verschiedene Anweisungsarten unterschieden: Anfragen und Updates Anfragen sind SQL-Anweisungen, die ein Ergebnis zurückliefern, typischerweise select - Anweisungen Sie werden über die executequery-methode des Statement- Objekts ausgeführt, diese Methode nimmt die Anfrage als Parameter in Textform entgegen und liefert das Ergebnis in einem ResultSet-Objekt zurück: R e s u l t S e t r e s u l t = stmt executequery ( SELECT FROM s t a f f ) ; 8 SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus

9 JDBC-Grundlagen 3 Die Phasen im Detail Applikationslogik Sybase-Treiber Sybase result stmt SELECT * FROM staff Updates entsprechen den drei DML-Anweisungen insert, update und delete Sie werden über die executeupdate-methode des Statement-Objekts ausgeführt Diese Methode liefert als Ergebnis die Anzahl der durch das Update betroffenen Tupel zurück, vorausgesetzt der Treiber sowie das DBMS unterstützen dies: stmt executeupdate ( UPDATE s t a f f SET s a l a r y =3000 WHERE name= Joe Hacker ) ; Applikationslogik Sybase-Treiber stmt Sybase UPDATE staff SET salary=3000 WHERE name= Joe Hacker 35 Auswertung der Ergebnisse Wurde eine Anfrage ausgeführt, muss in dieser Phase das zurückgelieferte ResultSet ausgewertet werden Dies geschieht nach dem Iterator-Prinzip Das Objekt besitzt einen internen Zeiger auf das jeweils aktuelle Tupel der Ergebnismenge Über die Methode next() wird dieser Zeiger auf das jeweils nächste Tupel gesetzt Ist kein Tupel mehr vorhanden, so liefert die next-methode den boolschen Wert false zurück Auf die einzelnen Attribute des aktuellen Tupels kann über die getxxx-methoden des ResultSet-Objekts zugegriffen werden XXX steht dabei für die Namen der Standarddatentypen, zb String oder Double Diese Methoden erwarten entweder den SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus 9

10 4 Ein zusammenhängendes Beispiel JDBC-Grundlagen Index des Attributs (Achtung: die Zählung beginnt bei 1!) oder dessen Namen Es wird vorausgesetzt, dass der Typ des jeweiligen Attributs bekannt ist while ( r e s u l t next ( ) ) System out p r i n t l n ( r e s u l t g e t S t r i n g ( name )+ : + Double t o S t r i n g ( r e s u l t getdouble ( s a l a r y ) ) ) ; 36 Schließen der Verbindung Wird eine Datenbank-Verbindung nicht mehr benötigt, kann sie durch einen Aufruf der close-methode des Connection-Objekts geschlossen werden, um Systemressourcen freizugeben: conn c l o s e ( ) ; Applikationslogik Sybase-Treiber Sybase 4 Ein zusammenhängendes Beispiel Nachfolgend sind die Codebeispiele des letzten Abschnitts nochmal in einem Block zusammengefasst: // Import der I n t e r f a c e s des j a v a s q l Packages import j a v a s q l ; import j a v a u t i l P r o p e r t i e s ; p u b l i c c l a s s JDBCMain 10 SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus

11 JDBC-Grundlagen 4 Ein zusammenhängendes Beispiel p u b l i c s t a t i c void main ( S t r i n g a r g s [ ] ) t r y // Laden des Sybase T r e i b e r s C l a s s forname ( com s y b a s e j d b c 2 j d b c S y b D r i v e r ) ; catch ( ClassNotFoundException e ) e p r i n t S t a c k T r a c e ( ) ; System e r r p r i n t l n ( T r e i b e r n i c h t gefunden! ) ; System e x i t ( 1); t r y P r o p e r t i e s props = new P r o p e r t i e s ( ) ; // Das s o l l t e n a t u e r l i c h vom Nutzer a b g e f r a g t werden! props put ( u s e r, j o e ) ; props put ( password, foo ) ; props put ( s e r v i c e n a m e, P e r s o n a l ) ; S t r i n g u r l = j d b c : s y b a s e : Tds : d b s e r v e r :1234 ; // Oeffnen der Verbindung zum DBMS Connection conn = DriverManager g e t C o n n e c t i o n ( u r l, props ) ; // Erzeugen e i n e s Statements Statement stmt=conn c r e a t e S t a t e m e n t ( ) ; // Ausfuehren e i n e s Updates S t r i n g s q l = UPDATE s t a f f SET s a l a r y =3000 WHERE name= Joe Hacker ; stmt executeupdate ( s q l ) ; // Ausfuehren e i n e r Anfrage s q l = SELECT FROM s t a f f ; R e s u l t S e t r e s u l t = stmt executequery ( s q l ) ; // Auswerten der Anfrage E r g e b n i s s e while ( r e s u l t next ( ) ) System out p r i n t l n ( r e s u l t g e t S t r i n g ( name )+ : + Double t o S t r i n g ( r e s u l t getdouble ( s a l a r y ) ) ) ; // Beenden der Verbindung SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus 11

12 5 Weitergehende Möglichkeiten mit JDBC JDBC-Grundlagen conn c l o s e ( ) ; catch ( E x c e p t i o n e ) // Ausgabe der Fehlermeldung e p r i n t S t a c k T r a c e ( ) ; System e x i t ( 1); 5 Weitergehende Möglichkeiten mit JDBC Die Möglichkeiten von JDBC gehen weit über die hier vorgestellten Grundlagen hinaus Dieser Abschnitt stellt als Beispiele einige fortgeschrittene Techniken vor: Abfrage der Schema-Information, die Bearbeitung von Ergebnismengen und Transaktionen 51 Nutzung von Metadaten Bisher wurde vorausgesetzt, dass der Programmierer das Schema der Datenbank genau kennt Wenn zb der Typ eines Attributs eines Tupels der Ergebnismenge unbekannt ist, weiß der Entwickler nicht, welche getxxx-methode zu benutzen ist Diese Schema-Informationen (Metadaten) sind allerdings im Data Dictionary der Datenbank gespeichert und können über JDBC abgefragt werden Metadaten stehen an zwei Stellen zur Verfügung: ConnectiongetMetaData liefert ein DatabaseMetaData - Objekt zurück, das Informationen über die Datenbank im Allgemeinen enthält, dh die Tabellenstruktur, die gespeicherten Prozeduren, den verwendeten SQL-Dialekt, etc ResultSetgetMetaData liefert ein ResultSetMetaData - Objekt zurück, das Informationen über die Struktur einer Ergebnismenge enthält, also zb Namen und Typen der Attribute Das folgende Code-Fragment (aufbauend auf der oben genutzten Personal-Datenbank) analysiert die Attribut-Struktur der Ergebnismenge einer Anfrage: 12 SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus

13 JDBC-Grundlagen 5 Weitergehende Möglichkeiten mit JDBC / / // Anfrage a u s f u e h r e n R e s u l t S e t r e s u l t = stmt executequery ( SELECT FROM s t a f f ) ; // Metadaten a u s l e s e n ResultSetMetaData md = r e s u l t getmetadata ( ) ; // Ausgabe a l l e r Attributnamen // ACHTUNG : das e r s t e A t t r i b u t hat d i e P o s i t i o n 1! f o r ( i n t i d x =1; idx<=md getcolumncount ( ) ; i d x++) System out p r i n t l n (md getcolumnname ( i d x ) ) ; / / 52 Verarbeitung von Ergebnismengen Ein normales ResultSet-Objekt hat zwei einschränkende Eigenschaften: Die Werte können nicht verändert werden Sie besitzen ein sogenanntes forward-only-cursor, dh die Menge kann nur genau einmal vom ersten bis zum letzten Element durchlaufen werden Seit JDBC Version 20 existieren scrollbare ResultSets Mittels diverser Navigationsmethoden kann der Zeiger innerhalb der Menge beliebig gesetzt werden: auf absolute Positionen, vorwärts oder rückwärts Außerdem ist es wünschenswert, wenn man die Daten eines ResultSets nachbearbeiten kann Zu diesem Zweck existieren änderbare ResultSet-Objekte mit updatexxx- Methoden Der Typ eines ResultSets wird durch das Statement bestimmt, in dessen Kontext es erzeugt wird Ein Statement, das mittels conncreatestatement() erzeugt wurde, generiert stets nicht veränderbare und nicht scrollbare ResultSets Werden der Methode zwei Parameter übergeben, lässt sich dieses Verhalten ändern: Statement stmt = conn c r e a t e S t a t e m e n t ( i n t r e s u l t S e t T y p e, i n t r e s u l t S e t C o n c u r r e n c y ) ; Der Parameter resultsettype kann folgende Werte annehmen: SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus 13

14 5 Weitergehende Möglichkeiten mit JDBC JDBC-Grundlagen resultsettype ResultSetTYPE_FORWARD_ONLY ResultSetTYPE_SCROLL_INSENSITIVE ResultSetTYPE_SCROLL_SENSITIVE Bedeutung Das ResultSet kann nur einmal vom ersten bis zum letzten Element durchlaufen werden Das ResultSet ist scrollbar, simultane Änderungen anderer Nutzer bleiben verborgen Das ResultSet ist scrollbar, Änderungen anderer Nutzer schlagen auf die Werte durch Für resultsetconcurrency gibt es diese Möglichkeiten: resultsetconcurrency ResultSetCONCUR_READ_ONLY ResultSetCONCUR_UPDATABLE Bedeutung Das Ergebnis kann nicht verändert werden Das Ergebnis kann editiert werden Das folgende Code-Fragment erzeugt ein Statement für scrollbare und änderbare ResultSets: / / Statement stmt = conn c r e a t e S t a t e m e n t ( R e s u l t S e t TYPE SCROLL INSENSITIVE, R e s u l t S e t CONCUR UPDATABLE ) ; / / // a u s f u e h r e n e i n e r Anfrage R e s u l t S e t r e s u l t = stmt executequery ( SELECT FROM s t a f f ) ; // s e t z t den Z e i g e r auf P o s i t i o n 2 r e s u l t a b s o l u t e ( 2 ) ; // s e t z t den Z e i g e r auf das e r s t e Tupel r e s u l t f i r s t ( ) ; // a e n d e r t das G e h a l t r e s u l t updatedouble ( s a l a r y, ) ; 53 Transaktionen Die JDBC-API unterstützt die Nutzung von Transaktionen Standardmäßig ist definiert, dass jede SQL-Anweisung, die per executequery oder executeupdate ausgeführt wird, einer Transaktion entspricht Dieses Verhalten lässt sich über die setautocommit-methode des Connection-Objekts ändern Durch den Parameter 14 SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus

15 JDBC-Grundlagen 6 JDBC und Applets false wird nach Ausführung von executexxx-methoden ein expliziter Aufruf von Connectioncommit bzw Connectionrollback erwartet: / / // e i n e T r a n s a k t i o n f u e r s i c h stmt executeupdate ( UPDATE s t a f f SET s a l a r y =3000 WHERE name= Joe Hacker ) ; conn setautocommit ( f a l s e ) ; / Beginn der T r a n s a k t i o n / stmt executeupdate ( DELETE FROM s t a f f WHERE name= A l f Weise ) ; stmt executeupdate ( INSERT INTO s t a f f ( name, s a l a r y ) VALUES( Tina Kunterbunt, ) ) ; // Commit conn commit ( ) ; / Ende der T r a n s a k t i o n / / Beginn e i n e r neuen T r a n s a k t i o n / stmt executeupdate ( UPDATE s t a f f SET s a l a r y =2000 WHERE name= Tina Kunterbunt ) ; // R o l l b a c k conn r o l l b a c k ( ) ; / Ende der T r a n s a k t i o n / / / Hinweis: Das zugrunde liegende DBMS muss natürlich Transaktionen unterstützen! 6 JDBC und Applets Es existieren zwei verschiedene Anwendungsbereiche für Java: Applikationen, die als normale Programme auf einem Rechner laufen und Applets, deren Code von einem SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus 15

16 6 JDBC und Applets JDBC-Grundlagen dbserver Port 1234 Sybase Datenbankserver Client verboten Applet JDBC- Treiber www Port 80 Apache Webserver Abbildung 3: direkter JDBC-Zugriff (verboten) Applet Client JDBC- Treiber Port 80 Apache Webserver www Port Sybase 1234 Datenbankserver Abbildung 4: Web- und Datenbankserver auf einem Rechner anderen Rechner geladen wird und deshalb bestimmten Sicherheitsanforderungen genügen muss Eine wichtige Einschränkung ist, dass ein Applet nur Daten von dem Rechner lesen darf, von dem aus es geladen wurde Der Zugriff auf die lokalen Daten des Clienten sind verboten, außerdem darf das Applet keine Verbindungen zu anderen Rechnern aufbauen Die Konsequenz für ein JDBC-nutzendes Applet zeigt Abbildung 3: wenn das Applet vom Rechner namens www geladen wurde, ist keine direkte Datenbankverbindung zum Rechner dbserver möglich Es bestehen zwei Möglichkeiten, dieses Problem zu lösen Zum Ersten sind Datenbankzugriffe gestattet, wenn sich der Datenbankserver auf demselben Rechner befindet wie der Webserver, siehe Abbildung 4 Diese Konstellation hat allerdings einige Nachteile: die Last des Webservers und des Datenbankservers konzentrieren sich auf einen gemeinsamen Rechner Außerdem lässt sich der Datenbankserver nur schlecht abschirmen, wenn zb nur Zugriffe aus dem Intranet erlaubt sein sollen Aus diesem Grund wird oftmals die zweite Lösung favorisiert, siehe Abbildung 5 Auf dem Webserver wird ein Gateway eingerichtet Dieses Gateway hat die Aufgabe, 16 SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus

17 JDBC-Grundlagen 7 Weiterführende Lektüre Applet Client JDBC- Treiber Port 80 www Apache Webserver Gateway dbserver Port 1234 Sybase Datenbankserver Abbildung 5: JDBC-Zugriff über ein Gateway Anfragen von außen entgegenzunehmen, evtl vorzuverarbeiten und die Datenbankzugriffe an den eigentlichen Server weiterzuleiten Ein weiteres Problem ist der JDBC-Treiber an sich Zur Erinnerung: Applets sind Programme, die auf einem Client-Rechner ausgeführt werden Ein JDBC-Treiber ist nichts weiter als eine Menge von Java-Klassen, deren Code ebenfalls auf dem Clienten ausgeführt wird Aus Sicherheitsgründen sind deshalb nicht alle JDBC-Treiber für den Einsatz in Applets geeignet An dieser Stelle sei allerdings auf weiterführende Literatur verwiesen 7 Weiterführende Lektüre Im WWW sind eine Vielzahl von Dokumenten über den Gebrauch von JDBC verfügbar, zb: Java-API Dokumentation: JDBC-Tutorial von Sun: ein weiteres Sun-Tutorial: Kurzübersicht: SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus 17

18 7 Weiterführende Lektüre JDBC-Grundlagen Code-Beispiele für Java allgemein: Ein JDBC-Seminar: JDBC-Seminarpdf 18 SS 2003 Gunar Fiedler, LS DBIS, BTU Cottbus

Datenbankzugriff über JDBC Datenbanken I (Systemorientierte Informatik IV) SS 2007. 1 Einführung

Datenbankzugriff über JDBC Datenbanken I (Systemorientierte Informatik IV) SS 2007. 1 Einführung Concept Content Information Topic Datenbankzugriff über JDBC Datenbanken I (Systemorientierte Informatik IV) SS 2007 Gunar Fiedler (fiedler@isinformatikuni-kielde) Institut für Informatik Arbeitsgruppe

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

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

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

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

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

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

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Anleitung zur Einrichtung einer ODBC Verbindung zu den Übungsdatenbanken

Anleitung zur Einrichtung einer ODBC Verbindung zu den Übungsdatenbanken Betriebliche Datenverarbeitung Wirtschaftswissenschaften AnleitungzurEinrichtungeinerODBC VerbindungzudenÜbungsdatenbanken 0.Voraussetzung Diese Anleitung beschreibt das Vorgehen für alle gängigen Windows

Mehr

JDBC. Allgemeines ODBC. java.sql. Beispiele

JDBC. Allgemeines ODBC. java.sql. Beispiele JDBC Java Data Base Connectivity Programmierschnittstelle für relationale Datenbanken Sammlung von Klassen, welche zum Aufbau einer Verbindung zwischen einem Java-Programm und einer Datenbank dienen Verwendet

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

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

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

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele: 2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Configuring Terminal Services o Configure Windows Server 2008 Terminal Services RemoteApp (TS RemoteApp) o Configure Terminal Services Gateway

Mehr

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen. Datenbank-Verschlüsselung mit DbDefence und Webanwendungen. In diesem Artikel werden wir Ihnen zeigen, wie Sie eine Datenbank verschlüsseln können, um den Zugriff einzuschränken, aber trotzdem noch eine

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser Seite 1 von 14 Cookie-Einstellungen verschiedener Browser Cookie-Einstellungen verschiedener Browser, 7. Dezember 2015 Inhaltsverzeichnis 1.Aktivierung von Cookies... 3 2.Cookies... 3 2.1.Wofu r braucht

Mehr

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

Guide DynDNS und Portforwarding

Guide DynDNS und Portforwarding Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch

Mehr

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole Lavid-F.I.S. Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der Lavid Software GmbH Dauner Straße 12, D-41236 Mönchengladbach http://www.lavid-software.net Support:

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

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

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

DB2 Kurzeinführung (Windows)

DB2 Kurzeinführung (Windows) DB2 Kurzeinführung (Windows) Michaelsen c 25. Mai 2010 1 1 Komponenten von DB2 DB2 bietet zahlreiche graphische Oberflächen für die Verwaltung der verschiedenen Komponenten und Anwendungen. Die wichtigsten

Mehr

How-to: Webserver NAT. Securepoint Security System Version 2007nx

How-to: Webserver NAT. Securepoint Security System Version 2007nx Securepoint Security System Inhaltsverzeichnis Webserver NAT... 3 1 Konfiguration einer Webserver NAT... 4 1.1 Einrichten von Netzwerkobjekten... 4 1.2 Erstellen von Firewall-Regeln... 6 Seite 2 Webserver

Mehr

ICS-Addin. Benutzerhandbuch. Version: 1.0

ICS-Addin. Benutzerhandbuch. Version: 1.0 ICS-Addin Benutzerhandbuch Version: 1.0 SecureGUARD GmbH, 2011 Inhalt: 1. Was ist ICS?... 3 2. ICS-Addin im Dashboard... 3 3. ICS einrichten... 4 4. ICS deaktivieren... 5 5. Adapter-Details am Server speichern...

Mehr

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695 Database Exchange Manager Replication Service- schematische Darstellung Replication Service- allgemeines Replikation von Daten von bzw. in ein SAP-System und einer relationalen DMS-Datenbank Kombination

Mehr

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. ewon - Technical Note Nr. 003 Version 1.2 Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. Übersicht 1. Thema 2. Benötigte Komponenten 3. Downloaden der Seiten und aufspielen auf

Mehr

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen) 1. Einführung: Über den ODBC-Zugriff können Sie bestimmte Daten aus Ihren orgamax-mandanten in anderen Anwendungen (beispielsweise Microsoft Excel oder Microsoft Access) einlesen. Dies bietet sich beispielsweise

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Grundlagen der Informatik 2

Grundlagen der Informatik 2 Grundlagen der Informatik 2 Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Gliederung 1. Einführung

Mehr

Anwenderdokumentation PersoSim

Anwenderdokumentation PersoSim Anwenderdokumentation PersoSim Die nachfolgende Anwenderdokumentation soll dem Anwender bei der Installation und den ersten Schritten im Umgang mit PersoSim helfen. Installation Grundvoraussetzung für

Mehr

Kleines Handbuch zur Fotogalerie der Pixel AG

Kleines Handbuch zur Fotogalerie der Pixel AG 1 1. Anmelden an der Galerie Um mit der Galerie arbeiten zu können muss man sich zuerst anmelden. Aufrufen der Galerie entweder über die Homepage (www.pixel-ag-bottwartal.de) oder über den direkten Link

Mehr

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren Verwaltungsdirektion Informatikdienste Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren Inhaltsverzeichnis Einleitung... 3 Installation WSUS Server... 4 Dokumente... 4 Step by Step Installation...

Mehr

Konfiguration Datenbank-Parameter

Konfiguration Datenbank-Parameter Kapitel 2 Programm-Konfigurationsdatei (INI-Datei) - 1 Konfiguration Datenbank-Parameter Die benötigten Parameter und Einstellungen für den Datenbank-Zugriff werden in der INI-Datei gespeichert (s.u.).

Mehr

Nutzung von GiS BasePac 8 im Netzwerk

Nutzung von GiS BasePac 8 im Netzwerk Allgemeines Grundsätzlich kann das GiS BasePac Programm in allen Netzwerken eingesetzt werden, die Verbindungen als Laufwerk zu lassen (alle WINDOWS Versionen). Die GiS Software unterstützt nur den Zugriff

Mehr

Praktikum Datenbanksysteme

Praktikum Datenbanksysteme Praktikum Datenbanksysteme Herbstsemester 2012 Dr. Andreas Geppert Platform Architecture Technology Infrastructure Services Credit Suisse geppert@acm.org Herbstsemester 2012 Slide 1 Themenübersicht konzeptueller

Mehr

Abschnitt 12: Strukturierung von Java-Programmen: Packages

Abschnitt 12: Strukturierung von Java-Programmen: Packages Abschnitt 12: Strukturierung von Java-Programmen: Packages 12. Strukturierung von Java-Programmen: Packages 12.1 Strukturierung durch Packages 12.2 Zugriffsspezifikationen 12.3 Zusammenfassung 12 Strukturierung

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2 Universität Osnabrück 1 3 - Objektorientierte Programmierung in Java Zur Erinnerung: Aufteilung der Schichten GUI Vorlesung 17: 3-Schichten-Architektur 2 Fachkonzept Fachkonzept - Datenhaltung Datenhaltung

Mehr

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über

Mehr

Lokale Installation von DotNetNuke 4 ohne IIS

Lokale Installation von DotNetNuke 4 ohne IIS Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation

Mehr

Lizenzen auschecken. Was ist zu tun?

Lizenzen auschecken. Was ist zu tun? Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.

Mehr

Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung

Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung ewon - Technical Note Nr. 004 Version 1.2 Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung 08.08.2006/SI Übersicht: 1. Thema 2. Benötigte Komponenten 3. Modemkonfiguration

Mehr

Online-Prüfungs-ABC. ABC Vertriebsberatung GmbH Bahnhofstraße 94 69151 Neckargemünd

Online-Prüfungs-ABC. ABC Vertriebsberatung GmbH Bahnhofstraße 94 69151 Neckargemünd Online-Prüfungs-ABC ABC Vertriebsberatung GmbH Bahnhofstraße 94 69151 Neckargemünd Telefon Support: 0 62 23 / 86 55 55 Telefon Vertrieb: 0 62 23 / 86 55 00 Fax: 0 62 23 / 80 55 45 (c) 2003 ABC Vertriebsberatung

Mehr

Tipps und Tricks zu Netop Vision und Vision Pro

Tipps und Tricks zu Netop Vision und Vision Pro Tipps und Tricks zu Netop Vision und Vision Pro Anwendungen auf Schülercomputer freigeben und starten Netop Vision ermöglicht Ihnen, Anwendungen und Dateien auf allen Schülercomputern gleichzeitig zu starten.

Mehr

Kern Concept AG Software Entwicklung HMO und BlueEvidence

Kern Concept AG Software Entwicklung HMO und BlueEvidence Kern Concept AG Software Entwicklung HMO und BlueEvidence Inhaltsverzeichnis 1. Inhaltsverzeichnis 1. Inhaltsverzeichnis... I 2. Vorwort... 1 2.1 Hausarztmodell HMO... 1 3. Funktionsüberblick zum HMO...

Mehr

Durchführung der Datenübernahme nach Reisekosten 2011

Durchführung der Datenübernahme nach Reisekosten 2011 Durchführung der Datenübernahme nach Reisekosten 2011 1. Starten Sie QuickSteuer Deluxe 2010. Rufen Sie anschließend über den Menüpunkt /Extras/Reisekosten Rechner den QuickSteuer Deluxe 2010 Reisekosten-Rechner,

Mehr

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank Die Entscheidung Advoware über VPN direkt auf dem lokalen PC / Netzwerk mit Zugriff auf die Datenbank des zentralen Servers am anderen

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

! " # $ " % & Nicki Wruck worldwidewruck 08.02.2006

!  # $  % & Nicki Wruck worldwidewruck 08.02.2006 !"# $ " %& Nicki Wruck worldwidewruck 08.02.2006 Wer kennt die Problematik nicht? Die.pst Datei von Outlook wird unübersichtlich groß, das Starten und Beenden dauert immer länger. Hat man dann noch die.pst

Mehr

Verbinden von IBM Informix mit Openoffice mittels JDBC

Verbinden von IBM Informix mit Openoffice mittels JDBC Verbinden von IBM Informix mit Openoffice mittels JDBC Voraussetzungen Installierte und laufende IBM Informixdatenbank. Getestet wurde mit IDS 9.40 und 10.00. Sollte aber auch mit älteren Versionen funktionieren.

Mehr

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt. Internet, Codes und Update ab Version 13 Um Ihnen einen möglichst schnellen Zugang zu den aktuellsten Programmversionen zu ermöglichen liegen Update-Dateien für Sie im Internet bereit. Es gibt drei Möglichkeiten

Mehr

Live Update (Auto Update)

Live Update (Auto Update) Live Update (Auto Update) Mit der Version 44.20.00 wurde moveit@iss+ um die Funktion des Live Updates (in anderen Programmen auch als Auto Update bekannt) für Programm Updates erweitert. Damit Sie auch

Mehr

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert: Firewall für Lexware professional konfigurieren Inhaltsverzeichnis: 1. Allgemein... 1 2. Einstellungen... 1 3. Windows XP SP2 und Windows 2003 Server SP1 Firewall...1 4. Bitdefender 9... 5 5. Norton Personal

Mehr

Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook (2002-2007) Zentrum für Datenverarbeitung der Universität Tübingen

Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook (2002-2007) Zentrum für Datenverarbeitung der Universität Tübingen Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook (2002-2007) Zentrum für Datenverarbeitung der Universität Tübingen Inhalt 1. Die Funambol Software... 3 2. Download und Installation... 3 3.

Mehr

Dokumentation zum Spielserver der Software Challenge

Dokumentation zum Spielserver der Software Challenge Dokumentation zum Spielserver der Software Challenge 10.08.2011 Inhaltsverzeichnis: Programmoberfläche... 2 Ein neues Spiel erstellen... 2 Spielfeldoberfläche... 4 Spielwiederholung laden... 5 Testdurchläufe...

Mehr

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze Ihre Interessentendatensätze bei inobroker Wenn Sie oder Ihre Kunden die Prozesse von inobroker nutzen, werden Interessentendatensätze erzeugt. Diese können Sie direkt über inobroker bearbeiten oder mit

Mehr

Installationsanleitung Mehrplatz-/Netzwerk Hypo Office Banking

Installationsanleitung Mehrplatz-/Netzwerk Hypo Office Banking Installationsanleitung Mehrplatz-/Netzwerk Hypo Office Banking Inhalt 1. VORAUSSETZUNGEN 2 BETRIEBSSYSTEME 2 HARDWARE ANFORDERUNGEN 2 2. MEHRPLATZ-/NETZWERKINSTALLATION 3 HINTERGRUND ZUR INSTALLATION 3

Mehr

Step by Step Remotedesktopfreigabe unter Windows Server 2003. von Christian Bartl

Step by Step Remotedesktopfreigabe unter Windows Server 2003. von Christian Bartl Step by Step Remotedesktopfreigabe unter Windows Server 2003 von Remotedesktopfreigabe unter Windows Server 2003 Um die Remotedesktopfreigabe zu nutzen muss diese am Server aktiviert werden. Außerdem ist

Mehr

Zugriff auf OWA Auf OWA kann über folgende URLs zugegriffen werden:

Zugriff auf OWA Auf OWA kann über folgende URLs zugegriffen werden: Anleitung zur Installation der Exchange Mail Lösung auf Android 2.3.5 Voraussetzung für die Einrichtung ist ein vorliegender Passwortbrief. Wenn in der folgenden Anleitung vom Extranet gesprochen wird

Mehr

Software Engineering Klassendiagramme Assoziationen

Software Engineering Klassendiagramme Assoziationen Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen

Mehr

Internet online Update (Internet Explorer)

Internet online Update (Internet Explorer) Um Ihr Consoir Beta immer schnell und umkompliziert auf den aktuellsten Stand zu bringen, bieten wir allen Kunden ein Internet Update an. Öffnen Sie Ihren Internetexplorer und gehen auf unsere Internetseite:

Mehr

Local Control Network Technische Dokumentation

Local Control Network Technische Dokumentation Steuerung von Hifi-Anlagen mit der LCN-GVS Häufig wird der Wunsch geäußert, eine Hi-Fi-Anlage in die Steuerung der LCN-GVS einzubinden. Auch das ist realisierbar. Für die hier gezeigte Lösung müssen wenige

Mehr

Anleitung auf SEITE 2

Anleitung auf SEITE 2 Anleitung für den Zugang zum WLAN der UdK Berlin mit den SSIDs UdK Berlin (unsecure) unter Windows 7 Übersicht über die verschiedenen W-LANs an der UdK Berlin: W-LAN Vorteil Nachteil - Nutzerdaten werden

Mehr

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5 Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5 Im Folgenden wird die Installation von MySQL 5.0 und Tomcat 5.0 beschrieben. Bei MySQL Server 5.0 handelt es sich um ein

Mehr

SharePoint Demonstration

SharePoint Demonstration SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit

Mehr

PHPNuke Quick & Dirty

PHPNuke Quick & Dirty PHPNuke Quick & Dirty Dieses Tutorial richtet sich an all die, die zum erstenmal an PHPNuke System aufsetzen und wirklich keine Ahnung haben wie es geht. Hier wird sehr flott, ohne grosse Umschweife dargestellt

Mehr

Verwendung des Terminalservers der MUG

Verwendung des Terminalservers der MUG Verwendung des Terminalservers der MUG Inhalt Allgemeines... 1 Installation des ICA-Client... 1 An- und Abmeldung... 4 Datentransfer vom/zum Terminalserver... 5 Allgemeines Die Medizinische Universität

Mehr

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen Um die maximale Sicherheit für das Betriebssystem und Ihre persönlichen Daten zu gewährleisten, können Sie Programme von Drittherstellern

Mehr

Datenbanken & Informationssysteme Übungen Teil 1

Datenbanken & Informationssysteme Übungen Teil 1 Programmierung von Datenbankzugriffen 1. Daten lesen mit JDBC Schreiben Sie eine Java-Anwendung, die die Tabelle Books in der Datenbank azamon ausgibt. Verwenden Sie dabei die SQL-Anweisung select * from

Mehr

ODBC-Treiber 1. 1.1 Programmübersicht

ODBC-Treiber 1. 1.1 Programmübersicht 1 O D B C - Treiber ODBC-Treiber 1 1.1 Programmübersicht Nach einer ausgiebigen Testphase wurde kürzlich der neue ODBC-Treiber freigegeben. Dieser ist somit ab der 2000-er-Version lizenzpflichtig und kann

Mehr

Dokumentation: Balanced Scorecard

Dokumentation: Balanced Scorecard Dokumentation: Balanced Scorecard 1. Einleitung Eine Balanced Scorecard (BSC) ist eine kennzahlenbasierte Managementmethode, welche sowohl Visionen als auch Strategien eines Unternehmens und relevante

Mehr

Betriebshandbuch. MyInTouch Import Tool

Betriebshandbuch. MyInTouch Import Tool Betriebshandbuch MyInTouch Import Tool Version 2.0.5, 17.08.2004 2 MyInTouch Installationshandbuch Inhaltsverzeichnis Inhaltsverzeichnis... 2 Bevor Sie beginnen... 3 Einleitung...3 Benötigte Daten...3

Mehr

Aufruf der Weboberflache des HPM- Warmepumpenmanagers aus dem Internet TIPPS

Aufruf der Weboberflache des HPM- Warmepumpenmanagers aus dem Internet TIPPS Aufruf der Weboberflache des HPM- Warmepumpenmanagers aus dem Internet TIPPS Oktober 2015 Tipp der Woche vom 28. Oktober 2015 Aufruf der Weboberfläche des HPM-Wärmepumpenmanagers aus dem Internet Der Panasonic

Mehr

ITT WEB-Service DEMO. Kurzbedienungsanleitung

ITT WEB-Service DEMO. Kurzbedienungsanleitung ITT WEB-Service DEMO Kurzbedienungsanleitung Allgemein ITT Water & Wastewater Deutschland GmbH ermöglicht es Kunden Ihre Abwasseranlagen auf eine Leitzentrale bei ITT W & WW in Hannover aufschalten zu

Mehr

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung Avira Management Console 2.6.1 Optimierung für großes Netzwerk Kurzanleitung Inhaltsverzeichnis 1. Einleitung... 3 2. Aktivieren des Pull-Modus für den AMC Agent... 3 3. Ereignisse des AMC Agent festlegen...

Mehr

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger Grundlegendes Oracle9i PostgreSQL Prevayler Memory mywms bietet umfangreiche Konfigurationsmöglichkeiten um die Daten dauerhaft zu speichern.

Mehr

Tutorial - www.root13.de

Tutorial - www.root13.de Tutorial - www.root13.de Netzwerk unter Linux einrichten (SuSE 7.0 oder höher) Inhaltsverzeichnis: - Netzwerk einrichten - Apache einrichten - einfaches FTP einrichten - GRUB einrichten Seite 1 Netzwerk

Mehr

Einrichtung des WS_FTP95 LE

Einrichtung des WS_FTP95 LE Einrichtung des WS_FTP95 LE Das Herunterladen des Programms (siehe Seite Hochladen) dauert durch die Größe von 656 KB auch mit dem Modem nicht lange. Im Ordner der herunter geladenen Dateien erscheint

Mehr

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein Einrichtung von orgamax-mobil Um die App orgamax Heute auf Ihrem Smartphone nutzen zu können, ist eine einmalige Einrichtung auf Ihrem orgamax Rechner (bei Einzelplatz) oder Ihrem orgamax Server (Mehrplatz)

Mehr

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis Kommunikationsübersicht Inhaltsverzeichnis Kommunikation bei Einsatz eines MasterServer... 2 Installation im... 2 Installation in der... 3 Kommunikation bei Einsatz eines MasterServer und FrontendServer...

Mehr

Root-Server für anspruchsvolle Lösungen

Root-Server für anspruchsvolle Lösungen Root-Server für anspruchsvolle Lösungen I Produktbeschreibung serverloft Internes Netzwerk / VPN Internes Netzwerk Mit dem Produkt Internes Netzwerk bietet serverloft seinen Kunden eine Möglichkeit, beliebig

Mehr

Installation des COM Port Redirectors

Installation des COM Port Redirectors Installation des COM Port Redirectors Über die entsprechenden Treiber ist es möglich, die seriellen Schnittstellen eines IGW/400 als virtuelle COM-Ports eines Windows-PCs zu nutzen. Aus Sicht der PC-Software

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

Backup der Progress Datenbank

Backup der Progress Datenbank Backup der Progress Datenbank Zeitplandienst (AT): Beachten Sie bitte: Die folgenden Aktionen können nur direkt am Server, vollzogen werden. Mit Progress 9.1 gibt es keine Möglichkeit über die Clients,

Mehr

Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2

Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2 Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2 Installationsvoraussetzungen: Die Update-Routine benötigt das DotNet-Framework 4.0 Client Profile, das normalerweise über

Mehr

Lizenz-Server überwachen

Lizenz-Server überwachen Einsteiger Fortgeschrittene Profis markus.meinl@m-quest.ch Version 1.0 Voraussetzungen für diesen Workshop 1. Die M-Quest Suite 2005-M oder höher ist auf diesem Rechner installiert 2. Das Produkt M-Lock

Mehr

Sage Customer View für Windows 8 Funktionen 01.12.2014

Sage Customer View für Windows 8 Funktionen 01.12.2014 Sage Customer View für Windows 8 Funktionen 01.12.2014 Inhaltsverzeichnis Sage Customer View für Windows 8 Inhaltsverzeichnis 2 1.0 Über dieses Dokument 3 2.0 Starten mit Sage Customer View 4 2.1 Installieren

Mehr

Anleitung zur Einrichtung eines Netzwerkes für den Gebrauch von GVService unter Windows 7

Anleitung zur Einrichtung eines Netzwerkes für den Gebrauch von GVService unter Windows 7 Anleitung zur Einrichtung eines Netzwerkes für den Gebrauch von GVService unter Windows 7 In dieser Anleitung geht es um das Bereitstellen einer zentralen GV Service Installation auf einem Server-PC, auf

Mehr

Updatehinweise für die Version forma 5.5.5

Updatehinweise für die Version forma 5.5.5 Updatehinweise für die Version forma 5.5.5 Seit der Version forma 5.5.0 aus 2012 gibt es nur noch eine Office-Version und keine StandAlone-Version mehr. Wenn Sie noch mit der alten Version forma 5.0.x

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

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

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