Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Oracle – XSQL in der Anwendung Thomas Matzke, 99IN.

Ähnliche Präsentationen


Präsentation zum Thema: "Oracle – XSQL in der Anwendung Thomas Matzke, 99IN."—  Präsentation transkript:

1 Oracle – XSQL in der Anwendung Thomas Matzke, 99IN

2 Inhalt Vorstellung von PLANet Kurze Einführung der XSQL – Technologie Was wird bei PLANet verwendet Erklärung der einzelnen Techniken

3 Vorstellung von PLANet Datenbankbasierte Planung von Lehrveranstaltungen als nutzerorientierte Intranet-Lösung –Planer –Professoren und Dozenten Erzeugung von Listen –Stundenblatt –Dozentenblatt –Matrikelübersicht Auswertung und Statistiken Flexible Darstellung: HTML, PDF, Graphik, Excel...

4 Browser Servlet- Engine+ Server Request an Server DB Oracle- Über XSQL-Skript Queries auf DB Rückgabe eines Result-Sets <?xml ver...... XML-Generierung aus Result-Set HTML PDF 10 8 9 SVG mit XSL-Stylesheet Transformation in JDBC XSQL-Technologie

5 Komponenten Datenbankserver: Oracle 8.1.6 i / 9.0.2.0.0i - Tablespace auf Oracle 8 in UTF-8 - Tablespace auf Oracle 9 in ISO-8859-1 Web-Server: Tomcat 3.3 beta http://jakarta.apache.org XSQL-Servlet aus XDK 9.0.2.0.0D

6 XSQL-Technologie Aufbau eines XSQL-Skripts select name,vorname,email,telefon from dozent XML-Header für Deutschland Elemente- Bezeichnung für XML Query Alias für DB-Verbindung (xsqlconfig.jar)

7 XSQL-Technologie

8 Was wird bei PLANet verwendet Single / Multiple Parameters Insert, Update, Delete - mit - als PL/SQL-Prozedur - als DML-Statement Session – Handling über Nested Cursor FO

9 Erklärung der einzelnen Techniken Insert mit Pflicht-Parameter bzw. Attribute table - Tabellenbezeichnung transform - Transformationsskript mit Spaltennamen - ermöglicht einfügen mehrerer Datensätze mit einem Aufruf - kann URL oder File sein Einsatzmöglichkeiten bei Formularen

10 Erklärung der einzelnen Techniken Insert mit Aufbau des Transformsheets … Spaltenbezeichnungen GROSS schreiben Elemente sind Spaltenbezeichnung

11 Erklärung der einzelnen Techniken Update mit Pflicht-Parameter table transform key-columns - Angabe der Spaltennamen mit denen Datensatz identifiziert werden soll - Angabe mehrere Spalten möglich, Trennung durch Komma Pflicht-Parameter bzw. Attribute

12 Erklärung der einzelnen Techniken Delete mit Pflicht-Parameter table transform key-columns - Angabe der Spaltennamen mit denen Datensatz identifiziert werden soll - Angabe mehrere Spalten möglich, Trennung durch Komma Pflicht-Parameter bzw. Attribute

13 Erklärung der einzelnen Techniken Insert, Update, Delete mit Element besteht aus SQL-Statement Statement darf nicht mit Semikolon abgeschlossen werden geeignet, wenn nur Single-Parameters verarbeitet werden eignet sich auch zum Ausführen von Programmblöcken Statements müssen mit 'begin‘ und 'end‘ eingeschlossen werden Nachteil bei Blöcken ist nicht eindeutige Fehlerausgabe

14 Erklärung der einzelnen Techniken Insert, Update, Delete mit Statements müssen in PL/SQL-Prozedur stehen Aufruf erfolgt durch Prozedur-Name hinter Prozedur-Name muss Semikolon stehen gut geeignet, wenn Parameter noch überprüft werden müssen

15 Erklärung der einzelnen Techniken Single / Multiple Parameter Parameter aus Formularen bzw. Session-Managment Parameter-Anzeige mit Darstellung in XSQL(generiertes XML):......

16 Single / Multiple Parameters - kann aus Textfeld, Listbox oder Radio-Button sein 430 Erklärung der einzelnen Techniken

17 Single / Multiple Parameters - kann durch mehrere Checkboxes,Textfelder mit gleichem Namen entstehen 430 429... Erklärung der einzelnen Techniken

18 Zugriff auf Single / Multiple Parameter im XSQL-Skript Zugriff auf Single-Parameter mit {@name} keine Pfadangaben, deswegen dürfen Session-Parameter und Request-Parameter nicht die gleiche Bezeichnung haben falls doch, hat Session-Parameter Vorrang Zugriff auf alle Multiple-Parameters nicht möglich nur erster Parameter wird erfasst

19 Erklärung der einzelnen Techniken Unterscheidung zwischen Single und Multiple-Parameters muss im Transform-Sheet implementiert werden Einsatz von im Transformations-Stylesheet funktioniert auch bei Delete und Update mit Single/Multiple-Parameters

20 Erklärung der einzelnen Techniken

21 mit Single/Multiple-Parameters Query mit Multiple-Parametern kann bei Formularen mit mehreren gleichnamigen Checkboxes auftreten, wenn man z.B. Detailangaben über mehrere Sachen gleichzeitig haben möchte Art des Zugriffes auf Parameter mit {@variable} läßt Multiple-Parameter nicht zu Lösung: Einsatz von Dummy-Tabellen Übergebene Parameter werden vor Ausführung der Query mit in Dummy-Tabelle gespeichert Parameter können dann mit Joins über Dummy-Tabelle verarbeitet werden

22 Erklärung der einzelnen Techniken Session-Handling Speicherung der Session-Parameter in......

23 Erklärung der einzelnen Techniken Session-Handling Sessionparameter müssen nur einmal gespeichert werden Sessionparameter mit gleichem Namen wie Requestparameter haben Vorrang im XSQL-Skript Sessionparameter lassen sich überschreiben

24 Erklärung der einzelnen Techniken Session-Handling Zuweisung mit 'value', wenn Request-Parameter als Session-Parameter gesetzt Zuweisung mit Query, wenn Parameter abhängig vom Request-Parameter aus der Datenbank bestimmt werden select dozid from dozent where name=(select name from nutzer where login='{@login}')

25 Erklärung der einzelnen Techniken Nested XML - Cursor kann nur in erzeugt werden aus Query wird eine XML-typische Hierarchie erzeugt macht Gruppierung nach Werten einfacher läßt sich beliebig tief schachteln siehe XSU-Skript Folie 45-49

26 Erklärung der einzelnen Techniken FO - Formatting Objects Ausgabe von PDF über XSQL möglich Voraussetzung: - FO-Bibliotheken (fop.jar) http://xml.apache.org/fop - xsqlserializers.jar (XDK) Zugriff auf Processing Engine durch Zusatz-Attribut "serializer=FOP" in Stylesheet-Definition zusätzliche Angabe des FO-Namespace in Stylesheet

27 <xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:version="1.0"> Erklärung der einzelnen Techniken FO - Formatting Objects Angabe des Namespace von XSLT-Engine nötig, da sonst nicht mit Templates gearbeitet werden kann Seitenrumpf sieht dann wie folgt aus:

28 <xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:version="1.0"> … Erklärung der einzelnen Techniken FO - Formatting Objects FOP-Beispiel in XSQL-Beispielen von ORACLE

29 Erklärung der einzelnen Techniken Generelle Probleme Umlaute Nullwertbehandlung in Querys - Überprüfung ob Element leer, nicht möglich - siehe Überprüfung bei Multiple ParametersMultiple Parameters Speicherbegrenzung in FOP bei Änderungen am Datenmodell sehr viel Korrekturen nötig


Herunterladen ppt "Oracle – XSQL in der Anwendung Thomas Matzke, 99IN."

Ähnliche Präsentationen


Google-Anzeigen