Sie sind hier
E-Book

Oracle PL/SQL

AutorMarco Skulschus, Marcus Wiederstein
Verlagcomelio GmbH
Erscheinungsjahr2010
Seitenanzahl522 Seiten
ISBN9783939701460
FormatPDF
KopierschutzDRM
GerätePC/MAC/eReader/Tablet
Preis29,95 EUR
Die SQL-Erweiterung PL/SQL der Oracle 10g/11g-Datenbank bietet eine umfangreiche Syntax für die Entwicklung von programmierbaren DB-Objekten wie Prozeduren/Funktionen und Triggern. So kann man vollständige datenbanknahe Anwendungen direkt in der Datenbank entwickeln und ihre Module in anderen Anwendungen, die in Java, .NET oder auch PHP geschrieben sind, wieder integrieren. Dieses Buch bietet Einsteigern einen umfassenden Überblick über die PL/SQL-Syntax und ihre Fähigkeiten.

Kaufen Sie hier:

Horizontale Tabs

Blick ins Buch
Inhaltsverzeichnis
Inhaltsverzeichnis6
Vorwort13
1. Einführung20
1. 1. Beispieldatenbank20
1. 1. 1. Entitäten20
1. 1. 2. Szenario21
1. 1. 3. Tabellen und Beziehungen25
1. 2. Einrichtung der Umgebung27
1. 2. 1. Oracle Database 10g Express Edition27
1. 2. 2. Entwicklungsumgebung31
1. 2. 2. 1 Oracle SQL Developer31
1. 2. 2. 2 Oracle SQL Developer Data Modeler33
1. 3. Einrichtung der Beispiel-Datenbank34
1. 3. 1. Dateien34
1. 3. 2. Tabellen und Daten aufspielen35
2. Einführung in PL/SQL39
2. 1. Wozu überhaupt PL/SQL?39
2. 1. 1. SQL- und PL/SQL-Variante eines Datenzugriffs39
2. 1. 2. Architektur von PL/SQL-Anwendungen42
2. 2. Die Struktur von PL/SQL46
2. 2. 1. Schreibweise und Benennungskonventionen für Variablen46
2. 2. 2. Blockstruktur48
2. 2. 3. Einsatzbereiche von PL/SQL50
2. 2. 4. Guter Programmierstil: Kommentare und Formatierungen52
3. Grundlegende Syntaxvorstellung58
3. 1. Basis-Syntax58
3. 1. 1. Gültige Zeichenmenge58
3. 1. 2. Literale59
3. 1. 2. 1 Literale: Anführungszeichen60
3. 1. 2. 2 Literale: Boolesche Werte61
3. 1. 2. 3 Literale: Zahlen62
3. 2. Variablen63
3. 2. 1. Deklaration64
3. 2. 2. Verwendung von %TYPE65
3. 2. 3. Vererbung von Datentypen66
3. 2. 4. Gültigkeit und Sichtbarkeit66
3. 3. Datentypen und Operatoren70
3. 3. 1. Oracle- und PL/SQL-Datentypen71
3. 3. 2. Subtypen – Eigene Datentypen73
3. 3. 3. Automatische und explizite Typumwandlung75
3. 3. 4. Operatoren79
3. 4. Ausgabemöglichkeiten im Puffer und in Dateien82
3. 4. 1. Puffer-Ausgaben mit DBMS_OUTPUT82
3. 4. 2. Datei-Ausgaben mit UTL_FILE87
3. 4. 2. 1 Einrichten eines Verzeichnisses88
3. 4. 2. 2 In Dateien schreiben und aus Dateien lesen90
3. 4. 3. Ausnahmen des UTL_FILE-Pakets95
3. 4. 4. Textformatierungen und Ersetzungen96
3. 5. Verzweigungen99
3. 5. 1. IF-Verzweigung100
3. 5. 2. IF-ELSE-Verzweigung101
3. 5. 3. IF-ELSIF-ELSE-Verzweigung102
3. 5. 4. CASE mit einzelnem Selektor103
3. 5. 5. Ausnahmen bei CASE104
3. 5. 6. Selektorlose CASE-Anweisung105
3. 5. 7. Programmmuster bei Verzweigungen106
3. 6. Schleifen107
3. 6. 1. LOOP – Einfache Schleife107
3. 6. 2. Schleifensteuerung mit EXIT und CONTINUE108
3. 6. 3. Verschachtelte Schleifenkonstruktionen mit Labeln109
3. 6. 4. WHILE-Schleife111
3. 6. 5. Numerische FOR-Schleife113
3. 7. Weitere Anweisungen115
3. 7. 1. GOTO-Strukturen mit Labeln115
3. 7. 1. 1 Beispiel116
3. 7. 1. 2 Nutzung mit Schaltvariablen119
3. 7. 2. NULL im Anweisungsabschnitt123
3. 8. Datensätze und %RECORD124
3. 9. Vorteile bei der Verwendung125
3. 9. 1. Definition eines Datensatztyps126
3. 9. 2. Verwendung von Datensätzen128
3. 9. 3. Datensatz-Erzeugung mit %ROWTYPE131
4. Transaktionssteuerung134
4. 1. SQL in PL/SQL134
4. 1. 1. Zulässigkeit von Anweisungen134
4. 1. 2. Dynamisches SQL135
4. 2. Kontextwechsel137
4. 2. 1. Grundprinzip138
4. 2. 2. Zugriffe über DB-Links141
4. 2. 3. Einsatz von Synonymen142
4. 2. 4. Aufruf von Pseudospalten143
4. 3. Steuerung von Transaktionen148
4. 3. 1. Grundproblem148
4. 3. 2. Bestätigen und zurücksetzen von Anweisungen150
4. 3. 3. Sicherungspunkte154
4. 3. 4. Transaktionen festlegen158
4. 3. 5. Tabellen sperren160
5. Cursor und Mengen164
5. 1. Prinzip von Cursorn164
5. 1. 1. Erzeugen und verarbeiten164
5. 1. 2. Cursor-Operationen166
5. 2. Explizite Cursor167
5. 2. 1. Deklaration167
5. 2. 2. Verarbeitung169
5. 2. 3. Cursor-Schleifen und Cursor-Attribute173
5. 2. 4. Parametrisierte Cursor und Wertzuweisungen178
5. 3. Implizite Cursor180
5. 3. 1. Definition180
5. 3. 2. Attribute182
5. 3. 3. Beispiel183
5. 3. 4. Zeilensperren im Cursor185
5. 4. Cursor-Variablen187
5. 4. 1. Deklaration187
5. 4. 2. Verarbeitung189
5. 5. Weitere Techniken194
5. 5. 1. Cursor-Ausdrücke194
5. 5. 2. Cursor-Ausnahmen197
6. Fehler und Ausnahmen199
6. 1. Einführung199
6. 1. 1. Typologie von Ausnahmen199
6. 1. 2. Allgemeine Funktionsweise von Ausnahmen200
6. 1. 3. Vordefinierte Ausnahmen203
6. 2. Selbst definierte Ausnahmen205
6. 2. 1. Deklaration und Verwendung205
6. 2. 2. Fehlermeldungen und Fehlerwerte207
6. 2. 3. Fehler und Ausnahmen in verschachtelten Blöcken210
6. 2. 4. Verschachtelte Blöcke und besondere Ausnahmen213
6. 2. 5. Verwendung von Ausnahmen bei Schleifen und Blöcken216
7. Collections und ihre Verarbeitung222
7. 1. Collections222
7. 1. 1. Typen222
7. 1. 2. Assoziative Arrays (Index-By-Tabellen)223
7. 1. 3. Verschachtelte Tabellen (Nested Tables)226
7. 1. 4. Varrays229
7. 1. 5. Multidimensionale Strukturen230
7. 1. 6. Collection-Methoden240
7. 1. 7. Ausnahmen und Collections247
7. 2. Mengenbindung und Mengenverarbeitung247
7. 2. 1. Bindungstypen248
7. 2. 2. Leistungsunterschiede im Vergleich249
7. 2. 3. Mengenübertragung mit FORALL250
7. 2. 4. Verwendung von Cursor-Attributen253
7. 2. 5. Ausnahmebehandlung bei der Mengenbindung256
7. 2. 6. Mengenabfrage mit BULK COLLECT259
7. 2. 7. Einsatz von RETURNING263
8. Dynamisches SQL268
8. 1. Einführung268
8. 1. 1. Grundproblem268
8. 1. 2. Verwendungszweck und Einsatzbereiche270
8. 2. SQL-Befehle mit EXECUTE IMMEDIATE ausführen270
8. 2. 1. Allgemeine Syntax271
8. 2. 2. Beispiel272
8. 3. Dynamisches SQL im Kontext279
8. 3. 1. Verwendung von Cursor-Variablen279
8. 3. 2. Mengenverarbeitung282
8. 3. 3. Beispiele284
9. Prozeduren und Funktionen290
9. 1. Modulare Strukturen in PL/SQL290
9. 1. 1. Typen von Modulen in PL/SQL290
9. 1. 2. Parameter und Parameter-Modi293
9. 1. 3. Fehlersuche und Korrektur300
9. 1. 3. 1 Data-Dictionary-Abfragen305
9. 1. 3. 2 Data-Dictionary-Sichten305
9. 2. Funktionen und Prozeduren erstellen307
9. 2. 1. Allgemeine Syntax für Funktionen307
9. 2. 2. Blockstruktur von Funktionen309
9. 2. 3. Entscheidungen für Parameter-Modi314
9. 2. 4. Ausnahmebehandlung318
9. 2. 5. Übergabe von Werten bei IN und IN OUT321
9. 2. 6. Rückgaben mit RETURN323
9. 2. 6. 1 Gültige Rückgabewerte bzw. -ausdrücke323
9. 2. 6. 2 Mehrere Rückgabewerte durch Fallunterscheidungen325
9. 2. 6. 3 Mehrere Rückgabewerte als fehlerhafte Deklaration326
9. 2. 6. 4 Fehlender Rückgabewert328
9. 2. 7. PL/SQL-Funktionen in SQL329
9. 2. 7. 1 Bedingungen für verwendbare PL/SQL-Funktionen329
9. 2. 7. 2 Einschränkungen und Gefahren330
9. 2. 7. 3 Geeignete Funktionen und Anwendungsgebiete331
9. 2. 7. 4 Aufruf von Spalten in PL/SQL-Funktionen338
9. 3. Eigene Prozeduren verwenden340
9. 3. 1. Die allgemeine Syntax von Prozeduren340
9. 3. 2. Blockstruktur von Prozeduren342
9. 3. 3. Speicherort von Prozeduren344
9. 3. 4. Wahl der Parameter-Modi und Wertübergabe345
9. 3. 4. 1 Aufruf von Prozeduren und Parameterübergabe345
9. 3. 4. 2 Entscheidungen für Parameter-Modi347
9. 3. 5. Ausnahmebehandlung für Prozeduren350
9. 3. 6. Übergabe per Referenz und Wert353
9. 4. Modul-Spezialitäten354
9. 4. 1. Überladen von Modulen354
9. 4. 1. 1 Grundvoraussetzungen für das Überladen355
9. 4. 1. 2 Einsatzbereiche des Überladens356
9. 4. 2. Vorwärtsdeklaration und Rekursion358
9. 4. 2. 1 Rekursion von Funktionen358
9. 4. 2. 2 Vorwärtsdeklaration361
9. 4. 3. Einsatz von lokalen Modulen364
9. 4. 3. 1 Funktionen als lokale Module365
9. 4. 3. 2 Prozeduren als lokale Module367
9. 4. 3. 3 Sichtbarkeit und Gültigkeit bei lokalen Modulen368
10. Pakete371
10. 1. Einführung371
10. 1. 1. Definition und Strukturen371
10. 1. 2. Vorteile durch die Verwendung von Paketen372
10. 1. 3. Aufbau von Paketen373
10. 1. 4. Sichtbarkeit und Gültigkeit376
10. 2. Eigene Pakete378
10. 2. 1. Ein Beispielpaket378
10. 2. 2. Speicherort von Paketen und ihre Bearbeitung381
10. 2. 3. Abhängigkeiten zwischen Körpern und Spezifikationen382
10. 2. 4. Aufruf von Paketen385
10. 2. 5. Öffentliche und private Elemente387
10. 2. 6. Berechtigungskonzepte bei gespeicherten Unterprogrammen389
10. 2. 6. 1 Benutzerrechte bei einzelnen Modulen394
10. 2. 7. Beispiel-Programm: Testdaten-Erzeugung394
10. 2. 7. 1 Sinn und Zweck der Testdaten-Erzeugung395
10. 2. 7. 2 Modularisierung der Anforderungen400
10. 2. 7. 3 Umsetzung der Anforderungen407
10. 2. 7. 4 Ausführung und Test des Generators419
10. 2. 8. Quelltextschutz und Verschlüsselung420
10. 3. Eingebaute PL/SQL-Pakete423
10. 3. 1. Systemüberwachung mit DBMS_UTILITY424
10. 3. 1. 1 Datenbank-Version herausfinden424
10. 3. 1. 2 Verarbeitung von kommagetrennten Werten425
10. 3. 1. 3 Aktive Instanzen auszählen427
10. 3. 2. Große Objekte mit DBMS_LOB bearbeiten429
10. 3. 2. 1 Allgemeine Eigenschaften von LOBs429
10. 3. 2. 2 Struktur des DBMS_LOB-Pakets431
10. 3. 2. 3 Einsatz und Verwendung von internen LOBs432
10. 3. 2. 4 Einsatz und Verwendung von externen LOBs438
10. 3. 3. Zugriff auf den Shared Pool440
10. 3. 4. Nachrichtenaustausch über Pipes442
10. 3. 5. Datenaustausch via Alarme446
10. 3. 6. Anwendungsoptimierung und -analyse von PL/SQL-Programmen449
10. 3. 6. 1 Gefahrenquellen für verbesserungswürdige Leistungen450
10. 3. 6. 2 Analysewerkzeuge für die Programmleistung451
11. Trigger470
11. 1. Einführung470
11. 1. 1. Typologie471
11. 1. 2. Einsatzbereiche472
11. 1. 3. Einschränkungen473
11. 2. Trigger programmieren474
11. 2. 1. Allgemeine Trigger-Befehle475
11. 2. 2. DML-Trigger475
11. 2. 3. Syntax-Erweiterungen von Triggern479
11. 2. 3. 1 Pseudodatensätze und die REFERENCING-Klausel479
11. 2. 3. 2 Bedingungen für betroffene Zeilen484
11. 2. 4. Instead-of-Trigger487
11. 2. 5. System-Trigger494
11. 2. 5. 1 Einsatz der WHEN-Klausel505
Index509

Weitere E-Books zum Thema: XML - erweiterbare Auszeichnungssprache - SQL

JAXB 2.0

E-Book JAXB 2.0
Ein Programmiertutorial für die Java Architecture for XML Binding Format: PDF

XML hat sich als universelles Format zur Speicherung und Verarbeitung von Daten etabliert. Zusammen mit Java ergibt sich eine Paarung mit einem großen Vorteil für die Datenverarbeitung -…

JAXB 2.0

E-Book JAXB 2.0
Ein Programmiertutorial für die Java Architecture for XML Binding Format: PDF

XML hat sich als universelles Format zur Speicherung und Verarbeitung von Daten etabliert. Zusammen mit Java ergibt sich eine Paarung mit einem großen Vorteil für die Datenverarbeitung -…

JAXB 2.0

E-Book JAXB 2.0
Ein Programmiertutorial für die Java Architecture for XML Binding Format: PDF

XML hat sich als universelles Format zur Speicherung und Verarbeitung von Daten etabliert. Zusammen mit Java ergibt sich eine Paarung mit einem großen Vorteil für die Datenverarbeitung -…

JAXB 2.0

E-Book JAXB 2.0
Ein Programmiertutorial für die Java Architecture for XML Binding Format: PDF

XML hat sich als universelles Format zur Speicherung und Verarbeitung von Daten etabliert. Zusammen mit Java ergibt sich eine Paarung mit einem großen Vorteil für die Datenverarbeitung -…

XML für Webentwickler

E-Book XML für Webentwickler
Ein praktischer Einstieg Format: PDF

VORHANG AUF FÜR XML - Speziell aus der Sicht von Webentwicklern geschrieben - Praktische Beispiele ebnen den Einstieg - XML Schema, Linking-Sprachen und Transformation von XML-Dokumenten -…

XML für Webentwickler

E-Book XML für Webentwickler
Ein praktischer Einstieg Format: PDF

VORHANG AUF FÜR XML - Speziell aus der Sicht von Webentwicklern geschrieben - Praktische Beispiele ebnen den Einstieg - XML Schema, Linking-Sprachen und Transformation von XML-Dokumenten -…

XML Standards

E-Book XML Standards
schnell+kompakt Format: PDF

Das XML-Universum auf das Wesentliche komprimiert: Was ist XML? Brauche ich es für mein Unternehmen oder mein Projekt? Wie setze ich es ein? Für einen schnellen Einstieg ins Thema. Die Themen…

SQL/XML:2006

E-Book SQL/XML:2006
Evaluierung der Standardkonformität ausgewählter Datenbanksysteme Format: PDF/ePUB

Die eXtensible Markup Language (XML) hat sich als grundlegende Technologie im elektronischen Datenaustausch etabliert. Eine Vielzahl an Daten ist jedoch historisch bedingt in Datenbanksystemen (DBS)…

SQL/XML:2006

E-Book SQL/XML:2006
Evaluierung der Standardkonformität ausgewählter Datenbanksysteme Format: PDF/ePUB

Die eXtensible Markup Language (XML) hat sich als grundlegende Technologie im elektronischen Datenaustausch etabliert. Eine Vielzahl an Daten ist jedoch historisch bedingt in Datenbanksystemen (DBS)…

SQL/XML:2006

E-Book SQL/XML:2006
Evaluierung der Standardkonformität ausgewählter Datenbanksysteme Format: PDF/ePUB

Die eXtensible Markup Language (XML) hat sich als grundlegende Technologie im elektronischen Datenaustausch etabliert. Eine Vielzahl an Daten ist jedoch historisch bedingt in Datenbanksystemen (DBS)…

Weitere Zeitschriften

FREIE WERKSTATT

FREIE WERKSTATT

Die Fachzeitschrift FREIE WERKSTATT berichtet seit der ersten Ausgaben 1994 über die Entwicklungen des Independent Aftermarkets (IAM). Hauptzielgruppe sind Inhaberinnen und Inhaber, Kfz-Meisterinnen ...

Bibel für heute

Bibel für heute

BIBEL FÜR HEUTE ist die Bibellese für alle, die die tägliche Routine durchbrechen wollen: Um sich intensiver mit einem Bibeltext zu beschäftigen. Um beim Bibel lesen Einblicke in Gottes ...

bank und markt

bank und markt

Zeitschrift für Banking - die führende Fachzeitschrift für den Markt und Wettbewerb der Finanzdienstleister, erscheint seit 1972 monatlich. Leitthemen Absatz und Akquise im Multichannel ...

care konkret

care konkret

care konkret ist die Wochenzeitung für Entscheider in der Pflege. Ambulant wie stationär. Sie fasst topaktuelle Informationen und Hintergründe aus der Pflegebranche kompakt und kompetent für Sie ...

crescendo

crescendo

Die Zeitschrift für Blas- und Spielleutemusik in NRW - Informationen aus dem Volksmusikerbund NRW - Berichte aus 23 Kreisverbänden mit über 1000 Blasorchestern, Spielmanns- und Fanfarenzügen - ...

DULV info

DULV info

UL-Technik, UL-Flugbetrieb, Luftrecht, Reiseberichte, Verbandsinte. Der Deutsche Ultraleichtflugverband e. V. - oder kurz DULV - wurde 1982 von ein paar Enthusiasten gegründet. Wegen der hohen ...