Jürgen Sieben

Oracle PL/SQL

Das umfassende Handbuch. 4. Auflage
eBook (epub), 1090 Seiten
EAN 9783836296328
Veröffentlicht September 2023
Verlag/Hersteller Rheinwerk eBooks

Auch erhältlich als:

Buch (Hardcover)
89,90
71,92 inkl. MwSt.
Sofort Lieferbar (Download)
Teilen
Beschreibung

Mit PL/SQL, der prozeduralen Erweiterung von SQL, verfügen Sie über eine faszinierende Technologie, um Oracles Datenbank mächtige Funktionen abzugewinnen. Egal, ob Sie bereits mit Datenbanken zu tun haben und jetzt die Fähigkeiten mit PL/SQL erweitern möchten, sich als Administrator beispielsweise in die Programmierung von Triggern einarbeiten wollen oder als Anwendungsentwickler einen näheren Blick auf Datenbankinterna werfen müssen: In diesem umfassenden Handbuch finden Sie alles, was Sie benötigen, um mit PL/SQL den maximalen Nutzen für Ihren Anwendungsfall zu finden. Dafür sorgen die gründliche Einführung in Aufbau und Syntax von PL/SQL, hilfreiche Anregungen zum Einsatz und der Verbesserung Ihres Codes sowie ausführliche Workshops mit Praxisbezug. Im Vordergrund des Buchs stehen die Strategien, die Sie benötigen, um performante, sichere und skalierbare Applikationen zu entwickeln. Neben der umfassenden Einführung in PL/SQL geht es daher um Fragen wie beispielsweise: Auf welche Weise können Sie große Datenmengen effizient verarbeiten? Welche Vor- und Nachteile haben Datenbanktrigger, wann sind sie richtig, wann nicht? Wann sollten Sie PL/SQL einsetzen, wann SQL? Wie schützen Sie die Datenbank vor unberechtigtem Zugriff? Die Kombination von strategischer Denkweise zur Datenbankprogrammierung und Workshops sowie Codebeispielen hilft Ihnen bei der korrekten und hochwertigen Datenbankprogrammierung. Aktuell zu Oracle 19c. Aus dem Inhalt: - Für Programmierer und Admins - Grundlagen von Oracle-Datenbanken - Werkzeuge und Ressourcen - Datenbankobjekte und SQL - Datensicherheit, Konsistenz, Transaktionen - Erweiterung von Datenbankfunktionalitäten - Syntax von PL/SQL - Datentypen und Kontrollstrukturen - Dynamisches SQL - Pluggable Databases - Debugging, Monitoring und Performancetuning - PL/Scope - LargeObjects, XML, OOP - Workshops aus der Praxis - u. v. m.

Portrait

Jürgen Sieben ist inhabender Geschäftsführer der ConDeS GmbH. Er beschäftigt sich mit der Entwicklung und Parametrierung von Software, Computerberatung und Systemanalyse für namhafte Kunden wie T-Mobile und Metro AG. Zudem schult er Datenbanktechnologien, z. B. alle relevanten Oracle-Bereiche (Einführung, SQL, PL/SQL, Administration, Performance, Backup & Recovery, Datawarehousing etc.). Seit 2008 ist er Dozent an der Hochschule der in Medien Stuttgart.

Inhaltsverzeichnis

Materialien zum Buch ... 21 1. Einführung ... 23 1.1 ... Für wen ist dieses Buch geschrieben? ... 23 1.2 ... Der Aufbau des Buches ... 26 1.3 ... Vorwort zur vierten Auflage ... 34 2. Verwendete Werkzeuge und Ressourcen ... 35 2.1 ... Oracles Online-Dokumentation ... 35 2.2 ... Aufsetzen einer Beispieldatenbank ... 40 2.3 ... SQL*Plus ... 41 2.4 ... SQLCL ... 42 2.5 ... SQL Developer ... 43 2.6 ... »explain plan« ... 44 2.7 ... Autotrace ... 46 2.8 ... Runstats ... 48 2.9 ... Trace und tkprof ... 49 2.10 ... Debugger ... 52 2.11 ... Weitere Werkzeuge ... 53 2.12 ... Die Beispielskripte ... 53 TEIL I. Grundlagen ... 55 3. Aufbau der Datenbank aus Sicht eines Programmierers ... 57 3.1 ... Grundlegende Arbeitsweise der Datenbank ... 57 3.2 ... Logischer Aufbau: Schema, Tablespace und Co. ... 69 3.3 ... Die physikalische Datenbank ... 79 3.4 ... Instanz und Speicherstrukturen ... 84 3.5 ... Containerdatenbank ... 94 3.6 ... Start der Datenbank ... 95 3.7 ... Verbindungsaufbau zur Datenbank ... 96 4. Datenbankobjekte und SQL ... 113 4.1 ... Tabellen ... 113 4.2 ... Index ... 120 4.3 ... Views und Materialized Views ... 129 4.4 ... PL/SQL-Programm ... 132 4.5 ... Sonstige Datenbankobjekte ... 133 4.6 ... Exkurs: Zeichensatzcodierung ... 139 4.7 ... Mächtigkeit von SQL ... 145 5. Datensicherheit, -konsistenz und Transaktion ... 159 5.1 ... Lese- und Schreibkonsistenz ... 160 5.2 ... Transaktion ... 164 5.3 ... Datenkonsistenz und referenzielle Integrität ... 168 5.4 ... Explizites Sperren von Daten durch die Anwendung ... 183 5.5 ... Verarbeitung einer SQL-Anweisung ... 190 5.6 ... Die Sperrmechanismen von Oracle ... 196 5.7 ... Datensicherheit ... 197 5.8 ... Workshop: Einfluss der Programmierung ... 200 6. Programmierung der Datenbank ... 213 6.1 ... Erweiterung der Datenbankfunktionalität ... 213 6.2 ... Programmierung der Datenkonsistenz ... 215 6.3 ... Programmierung der Datensicherheit ... 223 6.4 ... Anwendungsprogrammierung mit PL/SQL ... 226 6.5 ... Unterstützung der Administration durch PL/SQL ... 227 TEIL II. Die Sprache PL/SQL ... 231 7. Die Blockstruktur und Syntax von PL/SQL ... 233 7.1 ... Das Grundgerüst: der PL/SQL-Block ... 234 7.2 ... Prozeduren ... 241 7.3 ... Funktionen ... 257 7.4 ... Datenbanktrigger ... 261 7.5 ... Packages ... 262 7.6 ... Ausführungsrechte von PL/SQL-Blöcken ... 267 7.7 ... Compiler-Anweisungen (Pragma) ... 270 7.8 ... Best Practices ... 272 8. Kontrollstrukturen ... 275 8.1 ... Auswertende Anweisung 1 (»if then else«-Anweisung) ... 275 8.2 ... Auswertende Anweisung 2 (»case«-Anweisung) ... 277 8.3 ... Einfache Schleifen ... 281 8.4 ... Konditionale Kompilierung ... 292 8.5 ... Aus der Mottenkiste: Konzepte, die Sie nicht verwenden sollten ... 297 9. Datentypen in PL/SQL ... 303 9.1 ... Skalare Datentypen ... 303 9.2 ... Kollektionen in PL/SQL ... 314 9.3 ... Cursor ... 340 10. Cursor ... 341 10.1 ... Lebenszyklus eines Cursors ... 341 10.2 ... Cursor-Attribute ... 344 10.3 ... Parametrisierte Cursor ... 347 10.4 ... Mengenverarbeitung mit »bulk collect« ... 349 10.5 ... Kurzform: die »cursor for«-Schleife ... 351 10.6 ... Implizite versus explizite Cursor ... 353 10.7 ... Cursor-Variablen (»ref«-Cursor) ... 359 10.8 ... Cursor-Ausdrücke ... 366 10.9 ... Gemeinsamer Zugriff auf Daten über verteilte Cursor ... 371 10.10 ... Tabellenfunktionen ... 373 11. Events in der Datenbank: Programmierung von Triggern ... 385 11.1 ... DML-Trigger ... 385 11.2 ... »instead of«-Trigger ... 406 11.3 ... Einsatzbereiche von DML-Triggern ... 409 11.4 ... Wann Sie DML-Trigger nicht verwenden sollten ... 429 11.5 ... Datenbanktrigger ... 433 11.6 ... Zusammenfassung ... 445 12. Packages ... 449 12.1 ... Trennung von öffentlicher und privater Logik ... 449 12.2 ... Überladung in Packages ... 465 12.3 ... Ausführungsrechte von Packages ... 471 12.4 ... Packages und die Dependency Chain ... 476 12.5 ... Verschlüsselung von Package-Code ... 483 12.6 ... Oracle-Packages ... 488 12.7 ... Workshop: Verwaltung von Anwendungsparametern ... 501 13. Erweiterung von SQL ... 521 13.1 ... Wann SQL erweitert werden sollte ... 521 13.2 ... SQL durch eigene Funktionen erweitern ... 527 13.3 ... Workshop: Berechnung der Fakultät ... 537 13.4 ... Gruppenfunktionen selbst erstellen ... 547 13.5 ... Workshop: Code-Generator für Gruppenfunktionen ... 558 14. Dynamisches SQL ... 571 14.1 ... Dynamisches SQL mittels »execute immediate« ... 572 14.2 ... Dynamisches SQL mit Cursor-Variablen ... 576 14.3 ... Workshop: Erstellung einer Prozedur als Schnittstelle zu einem externen Programm ... 576 14.4 ... DBMS_SQL-Package ... 581 14.5 ... Sicherheit bei dynamischem SQL ... 597 14.6 ... SQL-Makros ... 601 14.7 ... Polymorphe Tabellenfunktionen ... 615 15. Exception ... 631 15.1 ... Oracle-Fehler ... 631 15.2 ... Applikationsfehler erstellen und bearbeiten ... 647 15.3 ... Workshop: zentralisierter Fehler-Handler mit einem Trigger ... 657 15.4 ... Zusammenfassung ... 662 TEIL III. PL/SQL im Einsatz ... 665 16. Arbeiten mit LOBs (Large Objects) ... 667 16.1 ... Technische Struktur ... 668 16.2 ... Die Datentypen »CLOB«, »NCLOB«, »BLOB« und »BFILE« ... 683 16.3 ... Das Package »DBMS_LOB« ... 686 16.4 ... Workshop: Hilfsfunktionen zum Arbeiten mit LOBs ... 692 17. Arbeiten mit XML ... 701 17.1 ... Der Datentyp »XMLType« ... 701 17.2 ... Die Speicherung von XML-Daten in der Datenbank ... 710 17.3 ... XML aus relationalen Daten erzeugen ... 713 17.4 ... Relationale Daten aus XML extrahieren ... 726 17.5 ... XML mit PL/SQL verarbeiten ... 731 17.6 ... Die XML-Datenbank ... 743 18. Arbeiten mit JSON ... 769 18.1 ... JSON ... 769 18.2 ... Programmierung von JSON mit PL/SQL ... 780 18.3 ... SODA (Simple Oracle Document Access) ... 789 19. Objektorientierung ... 801 19.1 ... Einführung in die Objektorientierung ... 803 19.2 ... Objektorientierte Datentypen ... 815 19.3 ... Objektorientierte Datenmodelle ... 826 19.4 ... Workshop: der Datentyp »MoneyType« ... 830 19.5 ... Objektorientierte Anwendungsentwicklung und relationale Datenbanken ... 851 20. Integration von Oracle in Applikationen ... 881 20.1 ... Sperrung von Daten bei der Datenänderung ... 882 20.2 ... Speicherung von Session-Informationen ... 901 20.3 ... Zugriff auf Daten über PL/SQL-Packages ... 920 20.4 ... Workshop: Keimzelle einer sicheren Datenbankanwendung ... 924 21. Performance-Tuning und Codeanalyse ... 945 21.1 ... Regeln zur Performance-Optimierung ... 946 21.2 ... Optimierungsmöglichkeiten von PL/SQL ... 955 21.3 ... Compiler-Warnungen ... 969 21.4 ... PL/Scope ... 973 21.5 ... PL/SQL Hierarchical Profiler ... 980 21.6 ... Den Speicherverbrauch von PL/SQL überwachen ... 999 22. Workshop: PL/SQL Instrumentation Toolkit (PIT) ... 1003 22.1 ... Überblick: die Idee und die Architektur ... 1003 22.2 ... Beschreibung der einzelnen Komponenten ... 1012 22.3 ... Implementierung des PIT-Administrations-Packages ... 1047 22.4 ... Weitere Ausgabemodule ... 1055 Index ... 1071

Technik
Sie können dieses eBook zum Beispiel mit den folgenden Geräten lesen:
• tolino Reader 
Laden Sie das eBook direkt über den Reader-Shop auf dem tolino herunter oder übertragen Sie das eBook auf Ihren tolino mit einer kostenlosen Software wie beispielsweise Adobe Digital Editions. 
• Sony Reader & andere eBook Reader 
Laden Sie das eBook direkt über den Reader-Shop herunter oder übertragen Sie das eBook mit der kostenlosen Software Sony READER FOR PC/Mac oder Adobe Digital Editions auf ein Standard-Lesegeräte. 
• Tablets & Smartphones 
Möchten Sie dieses eBook auf Ihrem Smartphone oder Tablet lesen, finden Sie hier unsere kostenlose Lese-App für iPhone/iPad und Android Smartphone/Tablets. 
• PC & Mac 
Lesen Sie das eBook direkt nach dem Herunterladen mit einer kostenlosen Lesesoftware, beispielsweise Adobe Digital Editions, Sony READER FOR PC/Mac oder direkt über Ihre eBook-Bibliothek in Ihrem Konto unter „Meine eBooks“ -  „online lesen“.
 
Bitte beachten Sie, dass die Kindle-Geräte das Format nicht unterstützen und dieses eBook somit nicht auf Kindle-Geräten lesbar ist.
Hersteller
Libri GmbH
Friedensallee 273

DE - 22763 Hamburg

E-Mail: GPSR@libri.de

Website: www.libri.de