Oracle PL/SQL (eBook)
1090 Seiten
Rheinwerk Computing (Verlag)
978-3-8362-9632-8 (ISBN)
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.
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.
1 Einführung
Die Oracle-Datenbank ist eines der mächtigsten und umfangreichsten relationalen Datenbanksysteme. Schon SQL ist ungeheuer vielseitig einsetzbar. Doch erst mit PL/SQL erschließt sich das gesamte Potenzial. Daher ist die Kenntnis von PL/SQL für jeden, der sich mit Oracle beschäftigt, essenziell.
PL/SQL ist keine Programmiersprache.
Das mag zunächst verwunderlich klingen, schließlich bedeutet PL/SQL Procedural Language for SQL, also eben das Gegenteil des Einleitungssatzes. Doch schon im ersten Satz von Oracle zur Einführung in PL/SQL heißt es: PL/SQL ist eine prozedurale Erweiterung von SQL. Dieser feine Unterschied ist sehr wichtig, auch für dieses Buch: Ein Buch über PL/SQL ist nicht komplett ohne ein Buch über SQL, wie z. B. mein Buch zum Thema, das ebenfalls beim Rheinwerk Verlag erschienen ist und sich inhaltlich sozusagen als erster Band zum vorliegenden Buch begreift. Sollten Sie also ein Neueinsteiger in die Welt der Oracle-Datenbanken sein, sollte Ihr erstes Augenmerk auf der Abfragesprache SQL liegen, nicht auf PL/SQL. Die syntaktischen Grundlagen von PL/SQL, die Namenskonventionen, aber auch die überwältigende Mehrheit der Funktionen in PL/SQL kommt aus SQL. Das vorweggenommen, ist PL/SQL aber auch eine faszinierende Technologie, mit deren Hilfe Sie der Datenbank den mächtigen Funktionsumfang abgewinnen können, den Sie sonst nur in sehr wenigen anderen Datenbanken finden. Mit diesem Buch werde ich Sie in die Sprache PL/SQL einführen und Ihnen erläutern, wie Sie aus der Datenbank maximalen Nutzen für Ihre Anwendung ziehen können.
1.1 Für wen ist dieses Buch geschrieben?
Nun, ganz eindeutig für Sie. Damit meine ich, dass die Konzeption dieses Buches natürlich kein Selbstzweck, sondern dem Ziel unterworfen ist, Ihnen zu erklären, wie und wofür PL/SQL einzusetzen ist, und eben nicht dem Ziel, einfach nur ein Buch über PL/SQL zu schreiben, das lediglich alle wichtigen Merkmale der Sprache auflistet. Daher habe ich mir zu Beginn Gedanken darüber gemacht, wer Sie eigentlich sind. Wer liest ein solches Buch? Ich stelle mir vor, dass Sie beruflich bereits mit Datenbanken zu tun hatten, auch schon programmiert haben und nun Ihre Kenntnisse und Fähigkeiten um PL/SQL erweitern möchten oder müssen. Vielleicht sind Sie ein Administrator, der sich in die Programmierung von Triggern einarbeiten oder PL/SQL-Programme zur Erleichterung seiner Arbeit verfassen muss? Vielleicht sind Sie aber auch ein Anwendungsentwickler, der bislang in einer der Programmiersprachen für Anwendungsentwicklung programmiert hat und nun, freiwillig oder aufgrund von Performance-Problemen gezwungen, einen näheren Blick in die Datenbankinterna werfen will? Vielleicht sind Sie der Betreuer einer Software, die von anderen geschrieben wurde (vielleicht von Vorgängern in Ihrem Job) und Ihnen nun zur weiteren Betreuung überlassen wurde. Sind Sie ein absoluter Neuling in Datenbanken und wollen den Einstieg über PL/SQL erreichen? Nein, das glaube ich eigentlich nicht. Daher richte ich mein Buch an meiner Erwartung an Sie aus.
Dieses Buch richtet sich einerseits an Leser, die SQL-Kenntnisse haben. PL/SQL-Bücher sind keine Einstiegsliteratur in Datenbanken, sondern setzen den Weg fort, den Sie durch die Auseinandersetzung mit relationalen Datenmodellen und SQL bereits begonnen haben. Ich setze nicht voraus, dass Ihre SQL-Kenntnisse sehr umfangreich sind, doch ein Grundverständnis dieser Abfragesprache sollte in jedem Fall vorhanden sein. Dann gehe ich davon aus, dass Sie bereits in irgendeiner Programmiersprache programmiert haben. Ich kann mir einfach nicht recht vorstellen, dass Sie das Programmieren gerade innerhalb einer Datenbank lernen möchten (oder müssen). Normalerweise, das lehrt mich auch die Erfahrung aus den vielen Kursen, die ich zum Thema PL/SQL-Einführung gegeben habe, ist die Programmierung der Datenbank ein Thema für Menschen, die bereits Programmiererfahrung in anderen Sprachen, sei es Cobol, C, C++, Java oder Visual Basic, haben. Daher möchte ich Sie nicht langweilen und erläutere die Grundlagen einer if-Anweisung nur sehr kurz.
Sollten Sie eine der beiden Voraussetzungen, die ich hier genannt habe, nicht mitbringen, empfehle ich Ihnen, sich zunächst mit diesen Themen zu beschäftigen. Insbesondere gilt diese Empfehlung für die Beschäftigung mit der Abfragesprache SQL. Wenn Sie mögen, können Sie für einen Einstieg in die Abfragesprache SQL mein Buch Oracle SQL – das umfassende Handbuch verwenden, das ebenfalls bei Rheinwerk erschienen ist. Je besser Sie diese Sprache beherrschen, umso leichter fällt es Ihnen, Aufgabenstellungen in Bezug auf Daten einer Datenbank zu lösen. Und auch das gilt: Je besser Sie SQL beherrschen, desto seltener müssen Sie zu einer Programmiersprache greifen, um ein Problem zu lösen. Das ist leider auch auf der Zeitachse wahr: Sollten Sie sich sehr gut mit dem SQL der Oracle-Datenbank-Version 7.3.4 auskennen, werden Sie staunen, was seit dieser Zeit in SQL an Fähigkeiten hinzugekommen ist. Die Beschäftigung mit SQL ist immer die Beschäftigung mit SQL in der Datenbankversion Ihrer Datenbank. Für diejenigen unter Ihnen, die noch nicht programmiert haben, glaube ich, wird der Stoff relativ schnell und wenig didaktisch vorangehen. Vielleicht sollten Sie ins Auge fassen, die Programmierung vorab zu erlernen. Auch hier geht es weniger darum, Experte in einer Programmiersprache zu sein, sondern um ein generelles Verständnis der Vorgehensweise beim Programmieren. Diese Einführung kann dieses Buch nicht leisten.
Darüber hinaus muss ich eine – für mich sehr schwierige – Entscheidung treffen: Werden Sie als meine Leser eher Entwickler sein, Endanwender oder Administratoren? Welcher konkrete Einsatzzweck liegt Ihrem Interesse an PL/SQL zugrunde? Diese Entscheidung ist nicht leicht. Ich habe mich dafür entschieden, aus dem Blickwinkel des Entwicklers und des Administrators zu schauen; der Schwerpunkt liegt allerdings auf dem Blickwinkel des Entwicklers von Anwendungssoftware. Aus dieser Entscheidung resultieren mehrere Konsequenzen:
-
Ich gehe davon aus, dass die meisten Anwendungsentwicklungen (insbesondere neu aufgesetzte Projekte) nicht mehr nur in einer Technologie allein entwickelt werden. Die aktuellen Architekturentscheidungen mit Webanwendungen, Applikationsservern und Datenbankservern lassen eine Entwicklung in einer Programmiersprache eigentlich auch nicht zu. Daher widme ich einigen Raum dieses Buches auch den Problemen der Integration von Oracle-Datenbanken in Anwendungen, die in anderen Programmiersprachen entwickelt werden.
-
Außerdem gehe ich davon aus, dass Datenbanken (nicht nur Oracle, sondern Datenbanken generell) vielen Anwendungsentwicklern nur als Datenspeicher geläufig sind und die Interna der Arbeitsweise ihnen nicht immer komplett bekannt sind. Daher gebe ich Ihnen eine ausführliche Einführung in die Arbeitsweise von Oracle-Datenbanken. Diese Einführung wird Administratoren bekannt vorkommen und für sie eventuell etwas oberflächlich sein, ist aus meiner Sicht für Entwickler aber unbedingt von Interesse, um zu verstehen, warum die Datenbank auf eine gewisse Weise programmiert werden will. Für Administratoren schließlich sind Kenntnisse einiger Aspekte der Anwendungsprogrammierung von unschätzbarem Wert, einfach, um zu verstehen, welche Problemstellungen durch Anwendungsentwickler in der Datenbank gelöst werden müssen. Daher empfehle ich die Abschnitte, die sich mit der Entwicklung von Anwendungen und der Integration von Oracle-Datenbanken in solche Anwendungen befassen, auch den Administratoren.
-
Ich gehe schließlich davon aus, dass es wichtiger ist, zu erklären, warum etwas getan werden muss, als wie etwas getan werden muss. Anders gesagt: Dieses Buch ist keine Referenz zu PL/SQL, in der Sie im Index einen Befehl nachschlagen können und auf Seite 371 alle Parameter der Prozedur aufgelistet bekommen. Diese Funktion übernehmen die Online-Ressourcen, die bei Oracle auf einem sehr hohen Niveau sind, wesentlich besser. Allein die Dokumentation der mitgelieferten Packages umfasst bei der Datenbankversion 19c stolze 4843 Seiten, und das bringt mich zum ersten Grund für meine Entscheidung, keine Referenz zu PL/SQL zu schreiben: Diese ist naturgemäß von der Version der Datenbank abhängig und daher schon veraltet, bevor sie ausgeliefert wird. Der zweite Grund ist, dass es mir ein besonderes Anliegen ist, Ihnen zu erklären, wie die Datenbank gut programmiert wird. Die Kunst besteht darin, der Datenbank bei der Erfüllung ihrer Aufgaben möglichst nicht im Wege zu stehen. Das ist gar nicht so leicht und gelingt nur, wenn Sie wissen, was Sie tun. Und genau dafür benötige ich Platz, den ich nicht durch Auflistungen von Prozedurparametern verschwenden wollte. Ich trete mit dem Ziel an, Ihnen zu erklären, was Sie tun müssen und warum, um eine gute Anwendung oder Anwendungsunterstützung zu erhalten. Messen Sie mich daran.
Außerdem ist dies ein Buch, in dem ich meine Meinung äußere. Vielleicht sollte ich so etwas nicht tun, und vielleicht reizt dies zum Widerspruch. Ich habe mich dennoch entschieden, Ihnen meine persönliche Meinung darüber mitzuteilen, wie eine Datenbank, speziell eine Oracle-Datenbank, programmiert werden sollte. Die Meinung basiert auf meiner Berufserfahrung, in der ich viel Code gesehen habe. In meinem Beruf komme ich vor allem zu Kunden, deren Code nicht oder nicht gut...
Erscheint lt. Verlag | 6.9.2023 |
---|---|
Sprache | deutsch |
Themenwelt | Mathematik / Informatik ► Informatik ► Datenbanken |
Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge | |
ISBN-10 | 3-8362-9632-2 / 3836296322 |
ISBN-13 | 978-3-8362-9632-8 / 9783836296328 |
Informationen gemäß Produktsicherheitsverordnung (GPSR) | |
Haben Sie eine Frage zum Produkt? |
Größe: 5,2 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belletristik und Sachbüchern. Der Fließtext wird dynamisch an die Display- und Schriftgröße angepasst. Auch für mobile Lesegeräte ist EPUB daher gut geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür eine kostenlose App.
Geräteliste und zusätzliche Hinweise
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich