Einführung in die Wirtschaftsinformatik Teil 7 - Einführung in Oracle APEX Wintersemester 2015/16 Lehrstuhl für Wirtschaftsinformatik und Electronic Government Universität Potsdam Chair of Business Information Systems and Electronic Government University of Potsdam Univ.-Prof. Dr.–Ing. habil. Norbert Gronau Lehrstuhlinhaber | Chairholder August-Bebel-Str. 89 | 14482 Potsdam | Germany Tel Fax +49 331 977 3322 +49 331 977 3406 E-Mail [email protected] Web lswi.de 1 Inhalt Aufbau und Bestandteile von Oracle Application Express 5.0.0 Die Bedienung von Oracle Application Express Ausführen und Auswerten von SQL-Statements Entwurf von Datenbankanwendungen 2 Aufbau und Bestandteile von Oracle Application Express 5.0.0 Die Bedienung von Oracle Application Express Ausführen und Auswerten von SQL-Statements Entwurf von Datenbankanwendungen 3 Was ist Application Express 5.0.0 Kostenfreies relationales Datenbanksystem Komponenten von Application Express Basiert auf der Oracle Datenbank 11g Relationales DBMS für Verwaltung der Datenbanken Unterliegt einigen technischen und sonstigen Einschränkungen Application Server für die Ausführung von Anwendungen auf den Datenbanken Verwaltungskomponenten zur Überwachung und Optimierung der Arbeit des Systems Entwicklungskomponenten für die Erarbeitung und Wartung von Anwendungen 4 Aufgaben und Funktionen des DBMS Effiziente, widerspruchsfreie und dauerhafte Speicherung Bereitstellung großer Datenmengen Vermittlung zwischen logischer und physischer Datenspeicherung nach der ANSI-SPARCArchitektur Verwaltung der Transaktionen im Bezug auf die Datensätze, z.B. Konsistenzprüfung, Abfrageoptimierung und Datensatzsperrung Bereitstellen von Schnittstellen zur Beschreibung der Daten und Definition der Datenstrukturen Datenmanipulation, z.B. Daten anlegen, ändern oder löschen Datenabfrage, z.B. Datensätze betrachten und komplexe Abfragen formulieren Datenzugriffskontrolle, z.B. Rechte der einzelnen Nutzer im Zugriff auf Daten 5 Application Server Software, die spezielle Dienste zur Verfügung stellt z. B. Transaktionen, Authentifizierung, Zugriff auf Datenbanken Dreischichtiger Aufbau: Präsentationsschicht - Inhaltsdarstellung im Client Logikschicht - Verwaltung aller Anwendungen und Transaktionen. Datenhaltungsschicht - Sicherung der Persistenz von Daten und Datenweitergabe an ein DBMS über Schnittstellen (Datenspeicherung) Ausgabe Eingabe Verarbeitung Verwaltung } Präsentation der Daten } Manipulation der Daten } Speicherung der Daten 6 Application Server Software, die spezielle Dienste zur Verfügung stellt z. B. Transaktionen, Authentifizierung, Zugriff auf Datenbanken Dreischichtiger Aufbau: Präsentationsschicht - Inhaltsdarstellung im Client Logikschicht - Verwaltung aller Anwendungen und Transaktionen. Datenhaltungsschicht - Sicherung der Persistenz von Daten und Datenweitergabe an ein DBMS über Schnittstellen (Datenspeicherung) Ausgabe Eingabe Verarbeitung Verwaltung } Präsentation der Daten } Manipulation der Daten } Speicherung der Daten 6 Application Server Software, die spezielle Dienste zur Verfügung stellt Dreischichtiger Aufbau: z. B. Transaktionen, Authentifizierung, Zugriff auf Datenbanken Präsentationsschicht - Inhaltsdarstellung im Client Logikschicht - Verwaltung aller Anwendungen und Transaktionen. Datenhaltungsschicht - Sicherung der Persistenz von Daten und Datenweitergabe an ein DBMS über Schnittstellen (Datenspeicherung) Präsentationsschicht Ausgabe Eingabe Verarbeitung Verwaltung } Präsentation der Daten } Manipulation der Daten } Speicherung der Daten 6 Application Server Software, die spezielle Dienste zur Verfügung stellt Dreischichtiger Aufbau: z. B. Transaktionen, Authentifizierung, Zugriff auf Datenbanken Präsentationsschicht - Inhaltsdarstellung im Client Logikschicht - Verwaltung aller Anwendungen und Transaktionen. Datenhaltungsschicht - Sicherung der Persistenz von Daten und Datenweitergabe an ein DBMS über Schnittstellen (Datenspeicherung) Präsentationsschicht Logikschicht Ausgabe Eingabe Verarbeitung Verwaltung } Präsentation der Daten } Manipulation der Daten } Speicherung der Daten 6 Application Server Software, die spezielle Dienste zur Verfügung stellt Dreischichtiger Aufbau: z. B. Transaktionen, Authentifizierung, Zugriff auf Datenbanken Präsentationsschicht - Inhaltsdarstellung im Client Logikschicht - Verwaltung aller Anwendungen und Transaktionen. Datenhaltungsschicht - Sicherung der Persistenz von Daten und Datenweitergabe an ein DBMS über Schnittstellen (Datenspeicherung) Präsentationsschicht Logikschicht Datenhaltungsschicht Ausgabe Eingabe Verarbeitung Verwaltung } Präsentation der Daten } Manipulation der Daten } Speicherung der Daten 6 Aufgaben der Verwaltungs- und Entwicklungskomponenten Verwaltungskomponenten Entwicklungskomponente Speicherverwaltung (temporär und dauerhaft) Einfache Schnittstelle zur Applikationserstellung Nutzerverwaltung, Rechtevergabe Erstellen von Web-Anwendungen Datenbanküberwachung, Wartungsarbeiten (BackupRecovery), Umgebungsvariablen Schnelle und einfache Gestaltung von SQL-Abfragen 7 Aufbau und Bestandteile von Oracle Application Express 5.0.0 Die Bedienung von Oracle Application Express Ausführen und Auswerten von SQL-Statements Entwurf von Datenbankanwendungen 8 Der Startbildschirm Anwendungsentwicklung Ausführen und Speichern von SQL-Statements Kollaborationsfunktionen Anwendungspakete Administration der DB Die Eingangsseite bietet direkten Zugang zu den relevanten Systemfunktionen. 9 Der Administrationsbereich Grundlegende Einstellungen Nutzerverwaltung Systemüberwachung Datenbankinformationen Workspace Summary Report Im Administrationsbereich können alle relevanten Betriebseinstellungen getroffen werden. 10 Die Nutzerverwaltung Nutzerkontoeinstellungen Generieren und Modifizieren von Nutzerrollen und -rechten Administrieren des Zugangs für Application Express-Arbeitsbereich-Administratoren, Anwendungsentwickler und Endanwender Die Einstellung der Nutzerrechte ist für die Sicherheit des Datenbanksystems von enormer Wichtigkeit. 11 Objektverwaltung Tables Views Indexes Sequences Types Packages Procedures Functions Triggers Database Links Materialized Views Synonyms "Create" ermöglicht Anlegen neuer Objekte Auswahl aus möglichen Objekttypen Der Object-Browser ermöglicht eine schnelle Übersicht und Verwaltung aller Objekte im Datenbanksystem. 12 Objekte und deren Funktionen Objektname Tabelle View (Ansicht) Index Funktion Methode Zentrales DB-Element zur Ablage von Tupeln (Datensätzen) Datensätze werden gleichrangig in der Tabelle organisiert Vereinfacht komplexe Abfragen durch Speicherung in einer separaten Tabelle Definition einer logischen Relation (virtuelle Tabelle) Beschleunigt Suche und Sortieren Diverse Indizierungsverfahren, z.B. HashFunktionen oder Baumstrukturen Neben Tabellen als Basiselemente werden weitere Objekte zur Optimierung und Vereinfachung bereitgestellt. 13 Möglichkeiten zur Ausführung von SQL-Statements Manuelles Ausführen von SQL-Befehlen Erstellen von Befehlsabfolgen (sogenannte Skripte zur sequenziellen Verarbeitung Erstellen von SQLAbfragen mittels Drag-and-Drop (beschränkte Abfragekomplexität) Je nach Komplexität der Abfrage stellt Oracle 11g XE dem Entwickler verschiedene Tools zur Verfügung. 14 Der Query-Builder Auswahl aus verfügbaren Tabellen Definition von Verknüpfungen zwischen Tabellen Auswahl der Attribute Detailauflistung der Attribute und Möglichkeiten zur Definition von Einschränkungen Der Query-Builder ermöglicht ein einfaches Zusammenstellen von SQL-Abfragen. 15 Datenbankwerkzeuge Datenbezogene Aufgaben, z.B. Im- und Export von Daten verschiedener Formate Berichte über die verschiedenen Datenbankobjekte Generieren von SQL-Statements, ermöglichen die Reproduktion von DB-Objekten Einstellung von Konventionen, die eine gemeinsame Entwicklung vereinfachen Papierkorb für gelöschte Objekte Die Datenbankwerkzeuge sorgen für vereinfachte Datenbankpflege und -überwachung. 16 Integrierte Anwendungsentwicklung Einfaches Erstellen von Anwendungen Verwaltung bereits bestehender Anwendungen Differenzierte Rechtevergabe für Anwendungen Bereitstellung von Komponenten zur Nutzerinteraktion Vorgabe von Anwendungsvorlagen für häufige Probleme Sicherstellung der Wiederverwendbarkeit über "Shared Components" Die integrierte Anwendungsentwicklung bietet die Möglichkeit, komplexe Anwendungen schnell und einfach zusammenzustellen. 17 Aufbau und Bestandteile von Oracle Application Express 5.0.0 Die Bedienung von Oracle Application Express Ausführen und Auswerten von SQL-Statements Entwurf von Datenbankanwendungen 18 Aufruf der Komponente Über Pull-Down Menü Alternativ vom Startbildschirm aus auf das Symbol klicken 19 Grundelemente der SQL Eingabe SQL-Befehl ausführen Bereich für die Eingabe des SQL-Befehls 2 1 Feld zur Darstellung des Ergebnisses 3 20 Ausführen eines SQL-Befehls Eingabe des SQL-Statements Klick auf Ausführen ("Run") Analyse des Ergebnisses im Ausgabefenster 3a 1 Festlegen der Anzahl der Ausgabezeilen 3a, Standard ist 10, sinnvoll ist mindestens die zu erwartende Zahl der auszugebenden Datensätze 2 3 21 Aussagekraft der Ausgabe 1 SQL-Befehl 2 Abgefragte Spalten (alle Attribute) 3 Datensätze, die den Abfragekriterien entsprechen Die tabellarische Anzeige liefert das Ergebnis der SQL-Abfrage. 22 Modifizierte Abfragen 1 2 Modifizierte Abfrage mit spezifischen Attributen Modifizierte Ausgabe, die nur die abgefragten Spalten beinhaltet Darstellung und Umfang der angezeigten Datensätze sind abhängig von der Komplexität der Abfrage. 23 Komplexere Abfragen SQL-Abfrage setzt sich zusammen aus: Attributen (1. Zeile), Tabellen (2. Zeile), Bedingungen (3. Zeile) Ergebnisse aus der Tabelle Mitarbeiter Ergebnisse aus der Tabelle Abteilung Bei einer Abfrage über mehrere Tabellen werden diese über ihre Schlüsselattribute verknüpft. 24 Tabellenverknüpfungen (Joins) Mitarbeiter Mitarbeiter_Nr Name Vorname Abt_Nr ... Abteilung Abt_Nr Abteilungsname Leiter Budget ... Verknüpfungslogik Tabellen werden über ihre Schlüsselattribute verknüpft Tabelle Mitarbeiter Ergebnistabelle Tabelle Abteilung Ergebnismenge Abfrageergebnis ist in einer Verknüpfung die Schnittmenge der beiden Tabellen Hier: Abt_Nr Im Abfrageergebnis bei verknüpften Tabellen werden nur Datensätze angezeigt, die in beiden Tabellen zu finden sind. 25 Tabellenbeschreibung über SQL-Statements (desc) Abfrage der Objekteigenschaften über "DESC" Eigenschaften des Tabellenobjektes "Mitarbeiter" Mit dem Befehl "DESC" lassen sich die Eigenschaften von Datenbankobjekten abfragen. 26 Aufbau und Bestandteile von Oracle Application Express 5.0.0 Die Bedienung von Oracle Application Express Ausführen und Auswerten von SQL-Statements Entwurf von Datenbankanwendungen 27 Grundlegende Funktionen der Entwicklungskomponente Bereitstellung einer integrierten Entwicklungskomponente; Zugriff über den "Application Builder" Bereitstellung von Datenbankabfragen, weiteren Designs und Programmelementen durch diese Komponente Schnelle und einfache Entwicklung von Standardlösungen durch Programmierungsassistenten Erreichbarkeit der Anwendungen über eine Weboberfläche Importmöglichkeiten aus Tabellenkalkulationsprogrammen Die Entwicklungskomponente unterstützt Programmierer bei der schnellen Erstellung von Anwendungen. 28 Schritt 1: Wahl der Vorgehensart Desktop oder Mobile Eine geführte Anwendungsentwicklung durchführen Websheet Gestaltung sog. Websheets (Webformulare) mit verschiedenen Abfragekomponenten Packaged Application Eine Beispiel-Anwendung installieren 29 Schritt 2: Vergabe eines Anwendungsnamens Auswahl ob die Anwendung auf einer bereits bestehenden basieren soll oder komplett neu angelegt wird (from scratch). 30 Schritt 3: Abfrageseiten erstellen Auswahl des Seitentyps (hier Report) Beispiel: Report über die Tabelle "Mitarbeiter" Kreationsmöglichkeiten weiterer unterschiedlicher Seiten 31 Schritt 4: Formulare erstellen Auswahl des Seitentyps (hier Form) Beispiel: Formular für die Tabelle "Mitarbeiter" Der zuvor erstellte Report wird bereits angezeigt 32 Schritt 4: Formulare erstellen Formular zur Mitarbeitererfassung hinzugefügt Möglichkeit der Integration beliebig vieler Seiten unterschiedlichen Typs in die Anwendung --> bilden zusammen die Applikation Seitendarstellung Abfragen, Graphen, Berechnungen, editierbare Formulare 33 Schritt 5: Shared Components Schritt 5: Wahl der Shared Components Von allen Anwendungen geteilte Komponenten, z.B.: Farbschemata JavaScript Vorlagen für Nutzeroberflächen Schriftartenschemata 34 Schritt 6: Authentifizierung und Spracheinstellungen Authentifizierungsschema: Welche Systemkomponente übernimmt die Nutzerauthentifizierung, z.B. Datenbank oder Application Server Spracheinstellungen ermöglichen multilinguale Bedienungsoberflächen 35 Schritt 7: Layoutthemen Personalisierung von Seiten Wahl unterschiedlicher Darstellungsformen und Farbschemata 36 Schritt 8: Die Zusammenfassung Überprüfung der Einstellungen Übersicht über alle Einstellungen vor der Applikationserstellung Möglichkeit der Speicherung als Vorlage 37 Schritt 9: Zugriff auf die Applikationsoberfläche Nach dem Assistenten: Anwendung in der Standardansicht Editiermöglichkeiten der einzelnen Seiten Weitere Spezifizierung der Abfragen nach Bedarf Start der Applikation durch Klicken auf das Ampelsymbol 38 Das Ergebnis Ausgabe nach Start der Anwendung Zwei definierte Seiten, organisiert in zwei Tabs 39 Kontrollfragen Welche Funktionalität bietet die freie Datenbank Oracle 11g XE? Welche Aufgabe erfüllt der Application Server? Worin liegt die Bedeutung der Nutzerverwaltung in Oracle XE? Kann über den Query-Builder eine SQL-Abfrage erzeugt werden? Welche Aufgabe erfüllt der Application Builder? 40 Literatur Oracle Application Express Documentation, < http://www.oracle.com/technetwork/developer-tools/apex/documentation/index.html >, letzter Zugriff 28.11.15 Oracle By Example (OBE) - Oracle Learning Library, <http://www.oracle.com/technetwork/tutorials/index.html>, letzter Zugriff 28.11.15 Oracle® Database 2 Day + Application Express Developer's Guide<https://docs.oracle.com/cd/E11882_01/nav/portal_4.htm>, letzter Zugriff: 28.11.15 Oracle Database 11g Documentation <http://www.oracle.com/technetwork/database/enterprise-edition/documentation/database11gr1-087487.html>, letzter Zugriff 27.11.15 41 Zum Nachlesen Kontakt Univ.-Prof. Dr.-Ing. Norbert Gronau Universität Potsdam August-Bebel-Str. 89 | 14482 Potsdam Germany Tel. +49 331 977 3322 E-Mail [email protected] Gronau, N., Gäbler, A.: Einführung in die Wirtschaftsinformatik, Band 1 5. überarbeitete Auflage, 2012 GITO Verlag Berlin 2012, ISBN 978-3-95545-096-0 42