Fr. 115.90

Oracle PL/SQL - Das umfassende Handbuch für Datenbankentwickler. Aktuell zu Oracle 19c und 21c

Allemand · Livre Relié

Expédition généralement dans un délai de 1 à 3 jours ouvrés

Description

En savoir plus

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.

Table des matières


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

A propos de l'auteur

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.

Résumé

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.

Texte suppl.

»Eine ausführliche Einführung in den Aufbau und die Syntax von PL/SQL sowie hilfreiche Anregungen zum Einsatz und der Verbesserung von Code. Die enthaltenen Workshops sind ausführlich gestaltet und haben einen starken Bezug zur Praxis.«

Commentaire

»Eine ausführliche Einführung in den Aufbau und die Syntax von PL/SQL sowie hilfreiche Anregungen zum Einsatz und der Verbesserung von Code. Die enthaltenen Workshops sind ausführlich gestaltet und haben einen starken Bezug zur Praxis.« Ahadesign.eu 202309

Détails du produit

Auteurs Jürgen Sieben
Edition Rheinwerk Verlag
 
Langues Allemand
Format d'édition Livre Relié
Sortie 06.09.2023
 
EAN 9783836296304
ISBN 978-3-8362-9630-4
Pages 1090
Dimensions 170 mm x 60 mm x 240 mm
Poids 2119 g
Catégories Sciences naturelles, médecine, informatique, technique > Informatique, ordinateurs > Langages de programmation

Trigger, Datenbanken programmieren, plsql, Datenbank erstellen, Datenbank-Administration, XML OOP, Programmiersprache Oracle, Oracle 19c 21c, Developer Tutorial, Dynamisches SQL

Commentaires des clients

Aucune analyse n'a été rédigée sur cet article pour le moment. Sois le premier à donner ton avis et aide les autres utilisateurs à prendre leur décision d'achat.

Écris un commentaire

Super ou nul ? Donne ton propre avis.

Pour les messages à CeDe.ch, veuillez utiliser le formulaire de contact.

Il faut impérativement remplir les champs de saisie marqués d'une *.

En soumettant ce formulaire, tu acceptes notre déclaration de protection des données.