1 Einführung Verwendete Werkzeuge und Ressourcen... 33

Größe: px
Ab Seite anzeigen:

Download "1 Einführung... 19 2 Verwendete Werkzeuge und Ressourcen... 33"

Transkript

1

2 Auf einen Blick Auf einen Blick 1 Einführung Verwendete Werkzeuge und Ressourcen TEIL I Grundlagen 3 Aufbau der Datenbank aus Sicht eines Programmierers Datenbankobjekte und SQL Datensicherheit, -konsistenz und Transaktion Programmierung der Datenbank TEIL II Die Sprache PL/SQL 7 Die Blockstruktur und Syntax von PL/SQL Kontrollstrukturen Datentypen in PL/SQL Dynamisches SQL Events in der Datenbank: Programmierung von Triggern Packages Exception TEIL III PL/SQL im Einsatz 14 Erweiterung von SQL Arbeiten mit LOBs (Large Objects) Arbeiten mit XML Objektorientierung Integration von Oracle in Applikationen Code-Analyse und Performance-Tuning Workshop: PL/SQL Instrumentation Toolkit (PIT)

3 Inhalt 1 Einführung Für wen ist dieses Buch geschrieben? Der Aufbau des Buches Teil 1: Grundlagen Teil 2: Die Sprache PL/SQL Teil 3: PL/SQL im Einsatz Vorwort zur zweiten Auflage Danksagung Verwendete Werkzeuge und Ressourcen Oracles Online-Dokumentation Wo finde ich die benötigten Informationen? PL/SQL-Grundlagen Oracle-Packages Weiterführende Literatur Aufsetzen einer Beispieldatenbank SQL*Plus SQL Developer »explain plan« Autotrace RunStats Trace und TKProf Debugger Weitere Werkzeuge Die Beispielskripte

4 TEIL I Grundlagen 3 Aufbau der Datenbank aus Sicht eines Programmierers Grundlegende Arbeitsweise der Datenbank Anforderungen an ein Datenbank-Managementsystem Die Begriffe Datenbank, Schema und Tablespace Systemtabellen, Data Dictionary und Privilegien Die Sicht der Anwendungsprogrammierer auf die Datenbank Logischer Aufbau: Schema, Tablespace & Co Schema Tablespace Auswirkungen auf die Architektur einer Applikation Die physikalische Datenbank Datendateien Redo-Log-Dateien Kontrolldatei Parameterdatei Passwortdatei FRA (Fast Recovery Area) ASM Instanz und Speicherstrukturen Die Speicherbereiche der SGA Shared Pool Die Hintergrundprozesse Start der Datenbank Verbindungsaufbau zur Datenbank Verbindungsarten und Treiber DEDICATED-SERVER-Verbindung Shared-Server-Verbindung Database Resident Connection Pool Und nun? Entscheidungshilfen für den Verbindungsaufbau

5 4 Datenbankobjekte und SQL Tabellen Heap Organized Table Index Organized Table Temporäre Tabellen Partitionierte Tabellen Index Anmerkung zur Benutzung von Indizes B*-Baum-Index Reverse-Key-Index Funktionsbasierter Index Views und Materialized Views Views Materialized Views PL/SQL-Programm Sonstige Datenbankobjekte Sequenzen Synonym Database Link Große Datenmengen:»CLOB«,»NCLOB«,»BLOB«und»BFile« Benutzerdefinierte Typen, XML Weitere Datenbankobjekte Exkurs: Zeichensatzkodierung Zeichensatzkodierung im Überblick Zeichensatzkodierung bei Oracle Mächtigkeit von SQL Analytische Funktionen Hierarchische Abfragen Error Logging Fazit Datensicherheit, -konsistenz und Transaktion Lese- und Schreibkonsistenz Lesekonsistenz Schreibkonsistenz

6 5.2 Transaktion Transaktion zum Schutz der Lesekonsistenz Transaktion zur Definition eines Geschäftsvorfalls Zusammenfassung Datenkonsistenz und referenzielle Integrität Datenintegrität Performance-Überlegungen zu Datenbank-Constraints Datenkonsistenz Zusammenfassung Explizites Sperren von Daten durch die Anwendung Das Problem: Lost Updates Das optimistische Sperren Das pessimistische Sperren Das vorsichtig optimistische Sperren Und nun? Wann sollte welche Sperrstrategie verwendet werden? Verarbeitung einer SQL-Anweisung Parsen und Optimierung Datenlieferung über Cursor Die Sperrmechanismen von Oracle Locks Latches Datensicherheit Workshop: Einfluss der Programmierung Das Ziel unserer Programmierung Implementierung des Tests Programmierung der Datenbank Erweiterung der Datenbankfunktionalität Programmierung der Datenkonsistenz Datenbanktrigger Datenzugriff über PL/SQL Datenkonsistenz jenseits referenzieller Integrität Programmierung der Datensicherheit Anwendungsprogrammierung mit PL/SQL PL/SQL auf der Client-Seite Webanwendungen mit PL/SQL entwickeln

7 6.5 Unterstützung der Administration durch PL/SQL Einsatz von PL/SQL in Skripten Verwaltung wiederkehrender Aufgaben mit Scheduler und Jobs Datenbanktrigger im Umfeld der Datensicherung und des Auditings TEIL II Die Sprache PL/SQL 7 Die Blockstruktur und Syntax von PL/SQL Das Grundgerüst: der PL/SQL-Block Deklaration von Variablen Schachtelung von Blöcken zur Fehlerbehandlung Gültigkeitsbereich von Variablen Prozeduren Prozeduren mit Parametern Formen der Parameterzuweisung Optionale Parameter Funktionen Datenbanktrigger Packages Package-Spezifikation Package-Körper Aufruf von Prozeduren und Methoden in Packages Ausführungsrechte von PL/SQL-Blöcken Compiler-Anweisungen (Pragma) Die autonome Transaktion Initialisierung eigener Fehler Best Practices Kontrollstrukturen Auswertende Anweisung 1 (»if then else«-anweisung) Auswertende Anweisung 2 (CASE-Anweisung) Einfache»case«-Anweisung

8 8.2.2 Die auswertende»case«-anweisung Einfache Schleifen Basisschleife (Schleife) Abweisende Schleife 1 (FOR-Schleife) Abweisende Schleife 2 (WHILE-Schleife) Best Practices Konditionale Kompilierung Die Auswahldirektive (selection directive) Die Abfragedirektive (inquiry directive) Die Error-Direktive (error directive) Aus der Mottenkiste: Konzepte, die Sie nicht verwenden sollten Label »continue«- und»goto«-anweisung Datentypen in PL/SQL PL/SQL-Datentypen SQL-Datentypen Basistypen und Subtypen in PL/SQL SQL-Datentypen mit abweichender Definition in PL/SQL SQL-Datentypen, die in PL/SQL nicht existieren PL/SQL-Datentypen, die in SQL nicht existieren Benutzerdefinierte Datentypen Ableitung von Variablentypen aus dem Data Dictionary Kollektionen in PL/SQL Record Assoziative Tabellen VARRAY oder NESTED_TABLE als Alternative zu einer assoziativen Tabelle Massenverarbeitung mit assoziativen Tabellen Cursor Lebenszyklus eines Cursors Cursor-Attribute Parametrierte Cursor Mengenverarbeitung mit»bulk collect« Kurzform: die»cursor for«-schleife Implizite versus explizite Cursor Cursor-Variablen (REF-Cursor)

9 9.3.8 Cursor-Ausdrücke Gemeinsamer Zugriff auf Daten über verteilte Cursor Pipelined Function Was ist eine Pipelined Function? Workshop: Pipelined Function Workshop: Verwendung von Pipelined Functions Workshop: Erstellung einer Pipelined Function Dynamisches SQL Dynamisches SQL Verwendung von Bindevariablen Dynamisches SQL mit Cursor-Variablen Workshop: Erstellung einer Prozedur als Schnittstelle zu einem externen Programm DBMS_SQL-Package Sicherheit bei dynamischem SQL SQL-Injection über Suchparameter SQL-Injection über Formatangaben SQL-Injection über das Einschmuggeln zusätzlicher Anweisungen Vermeidung von SQL-Injection 1: Bindevariablen Vermeidung von SQL-Injection 2:»dbms_assert« Events in der Datenbank: Programmierung von Triggern DML-Trigger Anweisungs- versus Zeilentrigger Der Triggerkörper Wann wird ein Trigger ausgelöst? Das Mutating-Table-Problem Compound Trigger Workshop: Lösung des Mutating-Table-Problems mit einem Compound Trigger Cross Edition Trigger Benennungskonvention von Triggern

10 11.2 Einsatzbereiche von DML-Triggern Erweiterung der Datenkonsistenzprüfung über Constraints hinaus Workshop: Statusänderungen in einer bestimmten Reihenfolge durchführen Implementierung einfacher Geschäftsregeln Historisierung, Logging und Auditing von Daten Workshop: Generisches Logging »instead of«-trigger Deklaration eines»instead of«-triggers Workshop: Historisierung von Daten mit einem»instead of«-trigger Wann Sie DML-Trigger nicht verwenden sollten Auditing mithilfe von Triggern Datenbanktrigger Ereignisattribute Datenbankereignisse Benutzerbezogene Ereignisse DDL-Ereignisse Systemereignisse Zusammenfassung Packages Trennung von öffentlicher und privater Logik Deklaration Implementierung Zusammenfassung Überladung in Packages Deklaration Implementierung Zusammenfassung Packages und die Dependency Chain Verschlüsselung von Package-Code Das»wrap«-Utility Verwendung des Packages»dbms_ddl«

11 12.5 Oracle-Packages Das Package»standard« Wichtige Oracle-Packages Workshop: Verwaltung von Anwendungsparametern Das Problem und die Lösungsidee Vorüberlegungen zur Parametertabelle Die Parametertabelle Einrichtung der Parametertabelle und der Zugriffsrechte Das Parameter-Package Das Package im Einsatz Exception Oracle-Fehler Benannte Fehler »SQLERRM«- und»sqlcode«-funktionen und der Fehler-Stack Nicht benannte Fehler benennen Applikationsfehler erstellen und bearbeiten Fehler direkt mit»raise_application_error«erzeugen Fehler aus einem Fehler-Package erstellen lassen Zentralisierung der Fehlermeldungen über»lmsgen« Workshop: Wrapper-Package um»utl_lms« Zusammenfassung: Fehlermeldungen mit»utl_lms« Workshop: Zentralisierter Fehler-Handler mit einem Trigger Zusammenfassung TEIL III PL/SQL im Einsatz 14 Erweiterung von SQL Wann SQL erweitert werden sollte Bleiben Sie auf dem aktuellen Wissensstand Voraussetzungen für die Erweiterung von SQL SQL mit eigenen Funktionen erweitern Anforderungen an den PL/SQL-Block Nebenwirkungsfreiheit (Purity)

12 Optimizer Hints Das Pragma»restrict_references« Workshop: Deterministische Funktion Workshop: Berechnung der Fakultät Einschränkung der Fakultätsfunktion auf definierte Werte Zielvorgabe Und was ist mit Rekursion? Gruppenfunktionen selbst erstellen Arbeitsweise von Gruppenfunktionen Workshop: Erstellung einer Gruppenfunktion Test der Gruppenfunktion Zusammenfassung Workshop: Code-Generator für Gruppenfunktionen Arbeiten mit LOBs (Large Objects) Technische Struktur Einsatz von LOB-Datentypen in der Datenbank LOB als PL/SQL-Variable LOB als Methodenparameter SecureFiles Die Datentypen»CLOB«,»NCLOB«,»BLOB«und»BFILE« »CLOB«und»NCLOB« Der binäre Datentyp»BLOB« »BFile« Das Package»DBMS_LOB« Schreibzugriff auf temporäre oder persistente LOBs Verwaltung temporärer und persistenter LOBs API für»bfile«-lob Zugriff auf LOBs durch die Anwendung Workshop: Hilfsfunktionen zum Arbeiten mit LOBs Hilfsfunktion zum Laden von»clob«und»blob«aus dem Dateisystem in die Datenbank Oder aber

13 16 Arbeiten mit XML Der Datentyp»XMLType« Verwendung von»xmltype«als Tabellen- oder Spaltentyp »XMLType«-Member Functions Umformung von XML mittels XSLT Die Speicherung von XML-Daten in der Datenbank XML aus relationalen Daten erzeugen Der SQL/XML-Standard Das Package»dbms_xmlgen«bzw.»sys_xmlgen« Relationale Daten aus XML extrahieren Extraktion relationaler Daten mit»xmltable« Extraktion relationaler Daten mittels Objektorientierung Extraktion relationaler Daten mittels Java-Programmierung XML mit PL/SQL verarbeiten Die Programmierung mittels DOM-Baum Die XML-Packages Die XML-Datenbank Einführung in die XML-Datenbank Speicherung und Veröffentlichung binärer Dokumente und XML-Dokumente Dokumente über XDB verwalten Zugriffsschutz und Sicherheit der XDB Versionierung von Ressourcen Objektorientierung Einführung in die Objektorientierung Alles ist ein Objekt Das zweite Reizwort: Vererbung! Abstrakte und finale Klassen Statische Methoden Objektidentität versus»statement of Truth« Klassen haben komplexe Strukturen Auswirkungen auf die Datenbankprogrammierung Objektorientierte Datentypen »OBJECT«

14 17.2.2»VARRAY« »NESTED TABLE« Vergleiche von Kollektionen Methoden von Kollektionstypen Workshop: Liste von Werten übergeben Objektorientierte Datenmodelle Workshop: Der Datentyp»MoneyType« Vorüberlegungen Implementierung des Typs»MoneyType« Der Typkörper Implementierung des Packages»moneytype_pkg« Der Package-Körper Die Rechtesituation ab Version 11g Erweiterung durch Vererbung Objektorientierte Anwendungsentwicklung und relationale Datenbanken Das Problem des Impedance Mismatch Lösungsansatz 1: Die Vision der generischen Datenbank Lösungsansatz 2: Objektrelationale Mapping-Werkzeuge Lösungsansatz 3: Die Datenbank als Daten-Framework Integration von Oracle in Applikationen Sperrung von Daten bei der Datenänderung Transaktionsschutz innerhalb der Datenbank Erweiterter Fokus: Datensicherung im Umfeld von Anwendungen Pessimistisches Locking Optimistisches Sperren Database-Change-Notification-basiertes Locking Speicherung von Session-Informationen Grundlagen eines Kontextes Session-Kontext Globally Accessed Context Workshop: Package zur Verwaltung von Kontexten Zugriff auf Daten über PL/SQL-Packages Kapselung von DML-Operationen in Packages Vermeidung von Triggern durch Packages Integration datenbezogener Geschäftsregeln

15 18.4 Workshop: Keimzelle einer sicheren Datenbankanwendung Das Projekt Übersicht über die Architektur Die»logon«-Prozedur Aufsetzen der Schemata Die Packages Test der Architektur Zusammenfassung und Ausblick Code-Analyse und Performance-Tuning Optimierungsmöglichkeiten von PL/SQL Automatisierte Code-Optimierung Subprogram-Inlining Native Kompilierung Caching Feingranulare Abhängigkeitsverwaltung Compiler-Warnungen PL/Scope Welche Information bietet PL/Scope? Die View»USER_IDENTIFIERS« Administration von PL/Scope PL/SQL Hierarchical Profiler Der hierarchische Profiler im SQL Developer Voraussetzungen für den Einsatz des hierarchischen Profilers Das Package»DBMS_HPROF« Die Analyse Ein etwas realitätsnäheres Beispiel Optionen der Funktion»dbms_hprof.analyze« Den Speicherverbrauch von PL/SQL überwachen Die Speicherverwaltung von PL/SQL Überwachung des Arbeitsspeichers Regeln zur Performance-Optimierung Nutzen Sie SQL, falls dies möglich ist Betrachten Sie die Datenbank als entfernte Ressource Benutzen Sie Bindevariablen Arbeiten Sie mengenorientiert Arbeiten Sie sich in die Grundkonzepte der Datenbank ein

16 Nutzen Sie PL/SQL bis zur Neige Kontrollieren Sie den Speicherverbrauch Glauben Sie nicht an Wunder Salvatorische Klausel Workshop: PL/SQL Instrumentation Toolkit (PIT) Überblick: die Idee und die Architektur Funktionsumfang Anwendungsbeispiel Die beteiligten Komponenten Idee und Arbeitsweise Beschreibung der einzelnen Komponenten Meldung Call Stack Kontext Adapter Das Package»MSG« Parameter- und Meldungstabelle Ausgabemodul Die PIT-API Die zentrale Komponente»PIT_PKG« Ein konkretes Ausgabemodul Test des PIT Implementierung des PIT-Administrationspackages Funktionsüberblick und Implementierungsstrategie Spezifikation Package-Körper Weitere Ausgabemodule Ausgabe in eigene Fehlerdateien Ausgabe in APEX Ausgabe in Alert-Log- oder Trace-Dateien Ausgabe in Logging-Tabellen Meldung als versenden Meldungen in JMS integrieren Index

17 Kapitel 1 Einführung 1 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. 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 kommen 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 möchte 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 19

18 1 Einführung 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 VisualBasic, 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 Galileo Press 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-Datenbankversion 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 20

19 1.1 Für wen ist dieses Buch geschrieben? 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: 1 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 für Administratoren bekannt und 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 12cR1 stolze Seiten... Nebenbei sind das über 900 Seiten mehr als zu Datenbankversion 11gR2, 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 21

20 1 Einführung 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 genug läuft. Daher sehe ich viel Code so, wie er nicht geschrieben werden sollte. Meine Meinung reflektiert dabei die Erfahrungen, die ich in diesen Projekten gesammelt habe, aber natürlich auch den Input, den ich von vielen sehr guten Kollegen und Autoren eingesogen habe. Trotzdem mögen Sie über die Ausrichtung von Software anderer Meinung sein als ich. Vielleicht arbeiten Sie in einem Team aus erfahrenen PL/SQL- Entwicklern, die Ihnen sagen, dass das, was ich hier schreibe, gut und schön, im konkreten Unternehmensumfeld aber nicht umsetzbar sei. Ich bin weit davon entfernt, hier Einspruch anzumelden. Natürlich gibt es viele gute Gründe für eine Position. Es gibt auch viele richtige Positionen. Allerdings gibt es noch mehr falsche Positionen. Gerade am Anfang ist es aber schwer, falsche von richtigen Positionen zu unterscheiden. Da jedoch gerade am Anfang eines Projekts Entscheidungen zugunsten oder zuungunsten einer Strategie fallen, die später nur schwer korrigierbar sind, empfinde ich es als richtig, auch in einem Einführungsbuch bereits eine richtige Position zu beziehen und Sie nicht mit dieser Einschätzung allein zu lassen. Sind Sie anderer Meinung, ist das natürlich kein Problem. Sie sollten lediglich eine begründete Meinung vertreten (können). Und schließlich: Ist es gerade eine Position, die ich vertrete, die Sie zum Widerspruch reizt und dazu anregt, eine eigene Position zu entwickeln, umso besser! 1.2 Der Aufbau des Buches Kapitel 2 liefert zunächst Grundinformationen zu den verwendeten Werkzeugen und Ressourcen; dann beginnen die drei großen Teile, in die dieses Buch gegliedert ist. Teil 1 und 2 folgen dem Gedanken, dass ich zunächst die Grundlagen, sowohl der Datenbank als auch der Programmiersprache PL/SQL, besprechen möchte. Den Abschluss 22

Inhaltsverzeichnis 9783836224970

Inhaltsverzeichnis 9783836224970 Inhaltsverzeichnis Inhaltsverzeichnis 9783836224970 1... Einführung... 19 1.1... Für wen ist dieses Buch geschrieben?... 19 1.2... Der Aufbau des Buches... 22 1.2.1... Teil 1: Grundlagen... 23 1.2.2...

Mehr

Datenbanksystem. System Global Area. Hintergrundprozesse. Dr. Frank Haney 1

Datenbanksystem. System Global Area. Hintergrundprozesse. Dr. Frank Haney 1 Datenbanksystem System Global Area Hintergrundprozesse Dr. Frank Haney 1 Komponenten des Datenbanksystems System Global Area Program Global Area Hintergrundprozesse Dr. Frank Haney 2 System Global Area

Mehr

CARL HANSER VERLAG. Christopher Allen. Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7

CARL HANSER VERLAG. Christopher Allen. Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7 CARL HANSER VERLAG Christopher Allen Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7 www.hanser.de Inhaltsverzeichnis Danksagung...XI Einleitung...XIII

Mehr

Inhaltsverzeichnis. 1 Der SQL Server 2008 stellt sich vor 15. 2 Die grafischen Tools des SQL Server 2008 59. 3 Eine neue Datenbank erstellen 87

Inhaltsverzeichnis. 1 Der SQL Server 2008 stellt sich vor 15. 2 Die grafischen Tools des SQL Server 2008 59. 3 Eine neue Datenbank erstellen 87 Vorwort 11 1 Der SQL Server 2008 stellt sich vor 15 1.1 SQL Server wer ist das? 16 1.1.1 Der SQL Server im Konzert der Datenbanksysteme 16 1.1.2 Entscheidungsszenarien für Datenbanksysteme 17 1.1.3 Komponenten

Mehr

Inhaltsverzeichnis. Lutz Fröhlich. PostgreSQL 9. Praxisbuch für Administratoren und Entwickler. ISBN (Buch): 978-3-446-42239-1

Inhaltsverzeichnis. Lutz Fröhlich. PostgreSQL 9. Praxisbuch für Administratoren und Entwickler. ISBN (Buch): 978-3-446-42239-1 Inhaltsverzeichnis Lutz Fröhlich PostgreSQL 9 Praxisbuch für Administratoren und Entwickler ISBN (Buch): 978-3-446-42239-1 ISBN (E-Book): 978-3-446-42932-1 Weitere Informationen oder Bestellungen unter

Mehr

SQL Server 2008 Der schnelle Einstieg

SQL Server 2008 Der schnelle Einstieg Klemens Konopasek SQL Server 2008 Der schnelle Einstieg Abfragen, Transact-SQL, Entwicklung und Verwaltung ADDISON-WESLEY An imprint of Pearson Education München Boston San Francisco Harlow, England Don

Mehr

Schulungskatalog Oracle / Quest

Schulungskatalog Oracle / Quest Schulungskatalog Oracle / Quest Individualität Mit den Inhouse-Schulungen der RUWA GmbH ermöglichen wir Ihnen die maßgeschneiderte Konfiguration Ihrer Weiterbildungsmaßnahme. Die Schwerpunkte werden von

Mehr

Praktische Anwendungsentwicklung mit Oracle Forms

Praktische Anwendungsentwicklung mit Oracle Forms Praktische Anwendungsentwicklung mit Oracle Forms von Perry Pakull, Stefan Jüssen, Walter H. Müller 1. Auflage Hanser München 2007 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 41098 5 Zu Leseprobe

Mehr

Programmierkurs: Delphi: Einstieg

Programmierkurs: Delphi: Einstieg Seite 1 von 6 Programmierkurs: Delphi: Einstieg Aus Wikibooks Inhaltsverzeichnis 1 Einstieg Einstieg Was ist Delphi Borland Delphi ist eine RAD-Programmierumgebung von Borland. Sie basiert auf der Programmiersprache

Mehr

SQL (Structured Query Language) Schemata Datentypen

SQL (Structured Query Language) Schemata Datentypen 2 SQL Sprachelemente Grundlegende Sprachelemente von SQL. 2.1 Übersicht Themen des Kapitels SQL Sprachelemente Themen des Kapitels SQL (Structured Query Language) Schemata Datentypen Im Kapitel SQL Sprachelemente

Mehr

SQL Server 2005 Der schnelle Einstieg

SQL Server 2005 Der schnelle Einstieg Klemens Konopasek Ernst Tiemeyer SQL Server 2005 Der schnelle Einstieg Abfragen, Transact-SQL, Entwicklung und Verwaltung An imprint of Pearson Education München Boston San Francisco Harlow, England Don

Mehr

Relationale Datenbanken Kursziele

Relationale Datenbanken Kursziele Relationale Datenbanken Kursziele DB Grundlagen Daten-Modellierung Relationales Modell und DB => Praxis: Mit SQL als Anfragesprache Mit MySQL als DB RDB 1-1 Kursinhalt (Tage) 1. DB Einleitung / Entity-Relationship

Mehr

Besser PHP programmieren

Besser PHP programmieren Carsten Möhrke Besser PHP programmieren Handbuch professioneller PHP-Techniken Galileo Press Vorwort zur dritten Auflage ц JjlJlli!fJÜIj SI!IS* 1.1 Lernen Sie Ihr Arbeitsgerät kennen 13 1.2 Der Editor,

Mehr

Inhalt. Vorwort...11. 1 Die Eigenschaften von PostgreSQL...15. 2 Das ideale DBMS...45. 3 Der Datenbankadministrator...59

Inhalt. Vorwort...11. 1 Die Eigenschaften von PostgreSQL...15. 2 Das ideale DBMS...45. 3 Der Datenbankadministrator...59 Inhalt Vorwort...11 1 Die Eigenschaften von PostgreSQL...15 1.1 Die Geschichte von PostgreSQL...16 1.2 Die Lizenz von PostgreSQL...17 1.3 Grundlegende Konzepte von Postgres...17 1.3.1 Die Eigenschaften

Mehr

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo. www.mid.de

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo. www.mid.de Innovator 11 excellence DDL importieren Data-Definition-Language-Dateien in Datenbankschema importieren HowTo www.mid.de Zweck In Innovator Data excellence können Sie mit dem DDL-Import Ihr physisches

Mehr

Einleitung. Literatur. Pierre Fierz. Architektur von Datenbanksystemen. Physische Datenunabhängigkeit. Der Datenbank Administrator (DBA) 1.

Einleitung. Literatur. Pierre Fierz. Architektur von Datenbanksystemen. Physische Datenunabhängigkeit. Der Datenbank Administrator (DBA) 1. Inhalt der Vorlesung Literatur 1 Datenmodellierung (Entity-Relationship Modell) 2 Das relationale Modell 3 Relationenalgebra 4 Datenbanksprache (SQL) 5 Normalisierung 6 Vom ERM zum Datenbankschema 7 Routinen

Mehr

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

Mehr

PL/SQL Einführung 1.2.066 / 4053 1-1

PL/SQL Einführung 1.2.066 / 4053 1-1 1 PL/SQL Einführung 1.1 Einleitung... 1-4 1.2 Funktionsweise von PL/SQL... 1-6 1.3 Initialisierungsparameter in ORACLE 10g... 1-8 1.4 PL/SQL-Blockstruktur... 1-14 1.5 Arten von PL/SQL-Programmkonstrukten...

Mehr

Aufbau einer Oracle Datenbank Tablespace, Arten von Dateien

Aufbau einer Oracle Datenbank Tablespace, Arten von Dateien Aufbau einer Oracle Datenbank Tablespace, Arten von Dateien Boris Meißner 05-INDT Fachbereich Informatik, Mathematik und Naturwissenschaften HTWK-Leipzig 05. Juni 2008 Boris Meißner (Fb IMN - HTWK-Leipzig)

Mehr

Datenbanken und Oracle, Teil 2

Datenbanken und Oracle, Teil 2 Datenbanken und Oracle, Teil 2 Mathias Weyland Linux User Group Switzerland 29. Juni 2007 SQL*Plus CHAR/VARCHAR2 Dokumentation Teil I Nachträge 1 SQL*Plus 2 CHAR/VARCHAR2 3 Dokumentation SQL*Plus SQL*Plus

Mehr

Datenbankentwicklung mit dem Microsoft SQL Server 2005

Datenbankentwicklung mit dem Microsoft SQL Server 2005 Holger Schmeling Datenbankentwicklung mit dem Microsoft SQL Server 2005 ISBN-10: 3-446-22532-3 ISBN-13: 978-3-446-22532-9 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-22532-9

Mehr

IBM Informix SQL. Seminarunterlage. Version 11.04 vom

IBM Informix SQL. Seminarunterlage. Version 11.04 vom Seminarunterlage Version: 11.04 Version 11.04 vom 27. April 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen

Mehr

Einführung in SQL Datenbanken bearbeiten

Einführung in SQL Datenbanken bearbeiten Einführung in SQL Datenbanken bearbeiten Jürgen Thomas Entstanden als Wiki-Buch Bibliografische Information Diese Publikation ist bei der Deutschen Nationalbibliothek registriert. Detaillierte Angaben

Mehr

Entwicklung einer mobilen webbasierten Anwendung mit Oracle9i Lite Web-to-Go

Entwicklung einer mobilen webbasierten Anwendung mit Oracle9i Lite Web-to-Go Thema Autor Entwicklung einer mobilen webbasierten Anwendung mit Oracle9i Lite Web-to-Go Christian Antognini (christian.antognini@trivadis.com) Art der Information Produktübersicht (Mai 2002) Quelle Trivadis

Mehr

Richtig einsteigen: Datenbanken entwickeln mit SQL Server 2012

Richtig einsteigen: Datenbanken entwickeln mit SQL Server 2012 Richtig einsteigen: Datenbanken entwickeln mit SQL Server 2012 von Robert Panther 1. Auflage Richtig einsteigen: Datenbanken entwickeln mit SQL Server 2012 Panther schnell und portofrei erhältlich bei

Mehr

3. Stored Procedures und PL/SQL

3. Stored Procedures und PL/SQL 3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln

Mehr

Auf einen Blick. Auf einen Blick

Auf einen Blick. Auf einen Blick Auf einen Blick Auf einen Blick 1 Einführung... 21 TEIL I Einführung und Grundlagen... 35 2 Verwendete Werkzeuge und Skripte... 37 3 Konzept einer relationalen Datenbank... 65 4 Aufbau einer Oracle-Datenbank...

Mehr

Grundlagen relationaler Datenbanken... 2. Access 2010 - Grundlagenseminar... 3. Access 2010 - Aufbauseminar... 4. Von Excel 2010 zu Access 2010...

Grundlagen relationaler Datenbanken... 2. Access 2010 - Grundlagenseminar... 3. Access 2010 - Aufbauseminar... 4. Von Excel 2010 zu Access 2010... Inhalt Grundlagen relationaler Datenbanken... 2 Access 2010 - Grundlagenseminar... 3 Access 2010 - Aufbauseminar... 4 Von Excel 2010 zu Access 2010... 5 Access 2010 - Programmierung Teil 1... 6 Access

Mehr

XML - Extensible Markup Language. Agenda - Oracle XML DB

XML - Extensible Markup Language. Agenda - Oracle XML DB Architektur und Funktionalitäten der Oracle XML DB - ein Überblick mit ausgewählten praktischen Beispielen - im Rahmen des 17. Workshop Grundlagen von Datenbanken 2005 in Wörlitz Annegret Warnecke Senior

Mehr

ANDREAS PROUZA. Wien, 2015-03-27. andreaspr@aon.at andreas@prouza.at. http://www.prouza.at

ANDREAS PROUZA. Wien, 2015-03-27. andreaspr@aon.at andreas@prouza.at. http://www.prouza.at DB2 & SQL E I N F Ü H R U N G T U N I N G O P T I M I E R U N G S E C R E T S ANDREAS PROUZA andreaspr@aon.at andreas@prouza.at http://www.prouza.at Wien, 2015-03-27 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis...

Mehr

Administering Microsoft SQL Server 2012/2014 Database (M20462) M20464 www.globalknowledge.at info@globalknowledge.at 01/66 55 655 3000

Administering Microsoft SQL Server 2012/2014 Database (M20462) M20464 www.globalknowledge.at info@globalknowledge.at 01/66 55 655 3000 Developing Microsoft SQL Server Databases Dauer: 5 Tage Kursnummer: M20464 Überblick: Im Rahmen dieses fünftägigen Kurses werden Ihnen das Know-How und die notwendigen Fertigkeiten zur Implementierung

Mehr

Inhaltsverzeichnis VII

Inhaltsverzeichnis VII Inhaltsverzeichnis 1 Erste Schritte...1 1.1 Einführung...1 1.2 Systemvoraussetzungen...2 1.3 Installation...2 1.3.1 Buch online lesen...3 1.3.2 Installation von Caché...3 1.3.3 Die Buch-Beispiele...4 1.4

Mehr

Geordnete Form...36 Erfassung und Speicherung...37 Relationale Datenbanken...37 Einfache Tabellen...37 Objekte und Begriffe relationaler

Geordnete Form...36 Erfassung und Speicherung...37 Relationale Datenbanken...37 Einfache Tabellen...37 Objekte und Begriffe relationaler Inhaltsverzeichnis Einleitung...13 SQL: Die Abfragesprache für Datenbanken...17 Kennzeichnende Merkmale von SQL...17 SQL-Dialekte...18 Kurze Entwicklungsgeschichte...18 SQL/86 oder SQL/1...19 SQL/89 oder

Mehr

WHERE Klausel Generierung mit.net und Oracle. Aus unserer Projekterfahrung und Architektur-Kurs

WHERE Klausel Generierung mit.net und Oracle. Aus unserer Projekterfahrung und Architektur-Kurs Betrifft Art der Info Quelle WHERE Klausel Generierung mit.net und Oracle Technical Info Aus unserer Projekterfahrung und Architektur-Kurs Where ist the WHERE? Der Artikel untersucht die Möglichkeiten,

Mehr

Oracle Datenbankadministration Grundlagen

Oracle Datenbankadministration Grundlagen Oracle Datenbankadministration Grundlagen Seminarunterlage Version: 12.02 Version 12.02 vom 14. April 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

11 Anwendungsprogrammierung

11 Anwendungsprogrammierung 11 11 11.1 Programmiersprachenanbindung 11.2 11.3 183 11 Programmiersprachenanbindung Programmiersprachenanbindung Kopplungsarten: prozedurale oder CALL-Schnittstellen (call level interface) Beispiele:

Mehr

PHP Programmierung. Seminarunterlage. Version 1.02 vom

PHP Programmierung. Seminarunterlage. Version 1.02 vom Seminarunterlage Version: 1.02 Version 1.02 vom 27. August 2013 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen

Mehr

Themen des Kapitels. 2 Oracle Features und Architektur

Themen des Kapitels. 2 Oracle Features und Architektur 2 Oracle Features und Architektur Einführung in die Eigenschaften und die Funktionsweise von Oracle. 2.1 Übersicht Themen des Kapitels - Oracle Features und Architektur Themen des Kapitels Oracle Produkte

Mehr

Adlerblick So gewinnen Sie einen Überblick über ein DWH Dr. Andrea Kennel InfoPunkt Kennel GmbH CH-8600 Dübendorf Schlüsselworte Einleitung

Adlerblick So gewinnen Sie einen Überblick über ein DWH Dr. Andrea Kennel InfoPunkt Kennel GmbH CH-8600 Dübendorf Schlüsselworte Einleitung Adlerblick So gewinnen Sie einen Überblick über ein DWH Dr. Andrea Kennel InfoPunkt Kennel GmbH CH-8600 Dübendorf Schlüsselworte DWH Projekt, Methodik, Stärken und Schwächen, Übersicht, Weg der Daten,

Mehr

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel Schlagworte Autor: Klaus Friemelt, MT AG dynamisches BULK SQL, VARCHAR2-indizierte PL/SQL-Tabellen Einleitung Mit den letzten

Mehr

MaxDB-Schulungsthemen

MaxDB-Schulungsthemen MaxDB-Schulungsthemen Ein Überblick über unser Angebot Allgemeine Hinweise zu unseren Schulungen Die Schulungen finden in der Regel als Inhouse Schulungen bei den interessierten Unternehmen statt. Die

Mehr

Oracle 10g Einführung

Oracle 10g Einführung Kurs Oracle 10g Einführung Teil 9 Benutzer und Timo Meyer Administration von Oracle-Datenbanken Timo Meyer Sommersemester 2006 Seite 1 von 11 Seite 1 von 11 Agenda GridAgenda Computing 1 2 3 ta 4 5 Ändern

Mehr

Robert Panther. Datenbanken entwickeln mit SQL Server 2008 Express Edition

Robert Panther. Datenbanken entwickeln mit SQL Server 2008 Express Edition Robert Panther Datenbanken entwickeln mit SQL Server 2008 Express Edition Robert Panther: Datenbanken entwickeln mit SQL Server 2008 Express Edition Microsoft Press Deutschland, Konrad-Zuse-Str. 1, 85716

Mehr

IBM DB2 für Linux/Unix/Windows Monitoring und Tuning

IBM DB2 für Linux/Unix/Windows Monitoring und Tuning IBM DB2 für Linux/Unix/Windows Monitoring und Tuning Seminarunterlage Version: 4.05 Version 4.05 vom 9. Februar 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt-

Mehr

Oracle -Datenbankadministration für SAP

Oracle -Datenbankadministration für SAP Andre Faustmann, Michael Höding, Gunnar Klein, Ronny Zimmermann Oracle -Datenbankadministration für SAP Galileo Press Bonn Boston 1 Einleitung 1.1 1.2 1.3 1.4 1.5 Gründe, dieses Buch zu besitzen 16 Aufgaben

Mehr

Microsoft Visual C# 2008

Microsoft Visual C# 2008 John Sharp 13 Microsoft Visual C# 2008 Schritt für Schritt 13 13 14 15 15 16 16 17 17 17 21 22 22 23 25 26 II 40 51 Press 53 54 54 55 55 56 56 57 58 63 63 64 Inhaltsverzeichnis Einleitung 13 Einführung

Mehr

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen...

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen... Inhalt HTML- Grundlagen und CSS... 2 XML Programmierung - Grundlagen... 3 PHP Programmierung - Grundlagen... 4 Java - Grundlagen... 5 Java Aufbau... 6 ASP.NET Programmierung - Grundlagen... 7 1 HTML- Grundlagen

Mehr

Alexander Niemann. Das Einsteigerseminar Objektorientierte Programmierung in Java. bhv

Alexander Niemann. Das Einsteigerseminar Objektorientierte Programmierung in Java. bhv Alexander Niemann Das Einsteigerseminar Objektorientierte Programmierung in Java G bhv Inhaltsverzeichnis Vorwort 11 Einleitung 13 Lernen - Üben 13 Über dieses Buch 14 Ш11ШШШШ '. ш Ш Java 19 Die Geschichte

Mehr

Oracle Database 11g Neue Features

Oracle Database 11g Neue Features Erratum zu Andrea Held Oracle Database 11g Neue Features für DBAs und Software-Entwickler ISBN 978-3-446-41198-2 Leider sind im Buch die Nummern von einigen Bildverweisen und Bildunterschriften falsch.

Mehr

Kurs für Microsoft Online Kurs Microsoft Analysten Programmierer

Kurs für Microsoft Online Kurs Microsoft Analysten Programmierer Kurs für Microsoft Online Kurs Microsoft Analysten Programmierer Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses für Microsoft Modul 1 Basis Programm Erste Lerneinheit Einführung

Mehr

IBM Informix Tuning und Monitoring

IBM Informix Tuning und Monitoring Seminarunterlage Version: 11.01 Copyright Version 11.01 vom 25. Juli 2012 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

Dataport IT Bildungs- und Beratungszentrum. Powershell - Scripting - Grundlagen... 2. PHP Programmierung - Grundlagen... 3

Dataport IT Bildungs- und Beratungszentrum. Powershell - Scripting - Grundlagen... 2. PHP Programmierung - Grundlagen... 3 Inhalt Powershell - Scripting - Grundlagen... 2 PHP - Grundlagen... 3 XML - Grundlagen... 4 VBS - Visual Basic Script - Grundlagen... 5 Access 2010 - Teil 1... 6 Access 2010 - Teil 2... 7 VBA... 8 VBA

Mehr

Microsoft SQL Server 2005 für Administratoren

Microsoft SQL Server 2005 für Administratoren Microsoft SQL Server 2005 für Administratoren Irene Bauder ISBN 3-446-22800-4 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22800-4 sowie im Buchhandel Inhaltsverzeichnis

Mehr

Oracle GridControl Tuning Pack. best Open Systems Day April 2010. Unterföhring. Marco Kühn best Systeme GmbH marco.kuehn@best.de

Oracle GridControl Tuning Pack. best Open Systems Day April 2010. Unterföhring. Marco Kühn best Systeme GmbH marco.kuehn@best.de Oracle GridControl Tuning Pack best Open Systems Day April 2010 Unterföhring Marco Kühn best Systeme GmbH marco.kuehn@best.de Agenda GridControl Overview Tuning Pack 4/26/10 Seite 2 Overview Grid Control

Mehr

Robert Panther. Richtig einsteigen: Datenbanken entwickeln mit SQL Server 2012

Robert Panther. Richtig einsteigen: Datenbanken entwickeln mit SQL Server 2012 Robert Panther Richtig einsteigen: Datenbanken entwickeln mit SQL Server 2012 Robert Panther Richtig einsteigen: Datenbanken entwickeln mit SQL Server 2012 Für SQL Server 2012 Express Edition und höher

Mehr

Berater-Profil 1575. DB- und Systemadministration - Informix, Sybase - EDV-Erfahrung seit 1991. Verfügbar ab auf Anfrage.

Berater-Profil 1575. DB- und Systemadministration - Informix, Sybase - EDV-Erfahrung seit 1991. Verfügbar ab auf Anfrage. Berater-Profil 1575 DB- und Systemadministration - Informix, Sybase - Ausbildung Diplomarbeit am Institut Industriel du Nord in Lille, Frankreich Studium der Allgemeinen Informatik (FH Köln) Diplom-Informatiker

Mehr

Oracle Datenbank - Recovery

Oracle Datenbank - Recovery Oracle Datenbank - Recovery H.-G. Hopf Georg-Simon-Ohm Fachhochschule Nürnberg Datenbank-Recovery / 1 Η. G.Hopf / 10.04.2003 Inhaltsverzeichnis Transaktionsablauf Prozess - Recovery Instanz - Recovery

Mehr

Inhalt. Vorwort 11. Inhalt der Buch-CD 13. 1 Einführung 17

Inhalt. Vorwort 11. Inhalt der Buch-CD 13. 1 Einführung 17 Inhalt Vorwort 11 Inhalt der Buch-CD 13 1 Einführung 17 1.1 Was ist MySQL? 17 1.2 Die wichtigsten Eigenschaften von MySQL 20 1.3 Bezugsquellen und Versionen 23 1.4 MySQL im Vergleich zu anderen Datenbanken

Mehr

Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht)

Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht) Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht) Christian Haag, DATA MART Consulting Consulting Manager Oracle DWH Team

Mehr

TOP 10 Monitoring SQL Befehle

TOP 10 Monitoring SQL Befehle TOP 10 Monitoring SQL Befehle Autor(en): Marco Patzwahl, MuniQSoft GmbH Viel Kunden haben schon mehr als 100 Datenbanken zu betreuen. Da kommt man ohne automatisierte Überwachungsskripte nicht sehr weit.

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

Gliederung und Einordnung

Gliederung und Einordnung Gliederung und Einordnung 1. Objektorientierte Programmierung mit Object Pascal (5. Studienbrief, Kapitel 5) 9.4. + 16.4. 2. Software-Bausteine am Beispiel der Delphi-Komponenten (5. Studienbrief, Kapitel

Mehr

Inhaltsverzeichnis. 4.1 Programme compilieren und starten 4.2 Arbeiten mit dem Editor 4.3 Der Objekt-Inspektor

Inhaltsverzeichnis. 4.1 Programme compilieren und starten 4.2 Arbeiten mit dem Editor 4.3 Der Objekt-Inspektor Inhaltsverzeichnis Vorwort 1 Was ist Delphi? 1.1 Die Wurzeln von Delphi 1.2 Der Konkurrent - Visual Basic 1.3 Die komponentenbasierte Entwicklung 1.4 Object-Pascal 2 Programmieren mit Delphi 2.1 Das ))visuelle((

Mehr

Helmut Dittrich Jürgen Mellenthin PHP 4-Workshop

Helmut Dittrich Jürgen Mellenthin PHP 4-Workshop 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Helmut Dittrich Jürgen Mellenthin PHP 4-Workshop Galileo Computing

Mehr

1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi

1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi 1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in

Mehr

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition Inhaltsverzeichnis Vorwort 13 I Enterprise Java im Überblick 1 Bedeutung von Enterprise Java und IBM WebSphere 21 1.1 Enterprise Java 23 1.1.1 Anforderungen 23 1.1.2 E-Business 30 1.1.3 Java 36 1.2 IBM

Mehr

3. Architektur eines DBS (Oracle)

3. Architektur eines DBS (Oracle) 3. Architektur eines DBS (Oracle) aus Sicht des Datenbank Server Rechners Connectivity Komponente(n) des DBS (z.b. Oracle Listener) Installation ORACLE_HOME Instanz ORACLE_SID Datenbank Oracle: 1 (aktive)

Mehr

Objektrelationale, erweiterbare Datenbanken

Objektrelationale, erweiterbare Datenbanken Objektrelationale, erweiterbare Datenbanken Wintersemester 2003/2004 Vorlesung: Mittwoch, 15:15-17:00 Uhr IFW A32 Übung: Mittwoch, 17:15-18:00 Uhr IFW A32 Dozent: Dr. Can Türker IFW C47.2 Email: WWW: tuerker@inf.ethz.ch

Mehr

Übung 4: Schreiben eines Shell-Skripts

Übung 4: Schreiben eines Shell-Skripts Aufgabenteil 1 Ziel der Übung Übung 4: Schreiben eines Shell-Skripts Anhand eines einfachen Linux-Skripts sollen die Grundlagen der Shell-Programmierung vermittelt werden. Das für die Bash-Shell zu erstellende

Mehr

Oracle BI Publisher in der Oracle Business Intelligence Enterprise Edition Plus. Eine Mehrwertdiskussion

Oracle BI Publisher in der Oracle Business Intelligence Enterprise Edition Plus. Eine Mehrwertdiskussion Oracle BI Publisher in der Oracle Business Intelligence Enterprise Edition Plus Eine Mehrwertdiskussion Der Oracle BI Publisher als Teil der Oracle BI Suite versus Oracle BI Publisher Standalone Der Oracle

Mehr

SQL Server 2008 Performance-Optimierung

SQL Server 2008 Performance-Optimierung Holger Schmeling SQL Server 2008 Performance-Optimierung Das Praxisbuch für Entwickler und Administratoren ^ ADDISON-WESLEY An imprint of Pearson Education München Boston San Francisco Harlow, England

Mehr

Android Kurs Online Kurs Entwicklung auf Android-Handys

Android Kurs Online Kurs Entwicklung auf Android-Handys Android Kurs Online Kurs Entwicklung auf Android-Handys Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses Modul Eins - Programmierung J2ee 1) Grundlegende Java - Programmierung : Grundlegende

Mehr

Was ist ein Computerprogramm?

Was ist ein Computerprogramm? Was ist ein Computerprogramm? Michael Sonntag Institut für Informationsverarbeitung und Mikroprozessortechnik (FIM) Johannes Kepler Universität Linz, Österreich sonntag@fim.uni-linz.ac.at 1 Problemaufriss

Mehr

Salesforce.com Entwicklerhandbuch

Salesforce.com Entwicklerhandbuch Andreas Holubek, Christian Metzger Salesforce.com Entwicklerhandbuch On-Demand-Anwendungen mit Apex und Apex Code ntwickier V 1 1.1 1.2 1.3 2 2.1 2.2 2.3 2.4 2.5 2.6 3 3.1 3.2 Vorwort Einleitung Überblick

Mehr

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008 PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 1 PIWIN I Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I Vorlesung 3 SWS WS 2007/2008 FB Informatik

Mehr

Kurs. Teil 4 Shared Pool. Universität Hannover. Agenda. Überblick. Library Cache Oracle 9i Einführung Performance Tuning. Trefferquote.

Kurs. Teil 4 Shared Pool. Universität Hannover. Agenda. Überblick. Library Cache Oracle 9i Einführung Performance Tuning. Trefferquote. Kurs Oracle 9i Einführung Performance Tuning Teil 4 Shared Pool Timo Meyer Wintersemester 2005 / 2006 Seite 1 von 22 Seite 1 von 22 1. 2. 3. SQL Area / 4. 5. 6. Shared Pool Reserved Area 7. Wiederverwendung

Mehr

Oracle und.net sind ein populäres Gespann. Doch wie lassen sich Oracle Features mit.net nutzen?

Oracle und.net sind ein populäres Gespann. Doch wie lassen sich Oracle Features mit.net nutzen? Betrifft Autor Oracle und.net im n-tier Umfeld Urs Meier (urs.meier@trivadis.com) Art der Info Technical Info (April 2003) Quelle Aus unserer Projekterfahrung Einführung Oracle und.net sind ein populäres

Mehr

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik

Mehr

Microsoft SQL Server 2008 für Administratoren

Microsoft SQL Server 2008 für Administratoren Irene Bauder Microsoft SQL Server 2008 für Administratoren ISBN-10: 3-446-41393-6 ISBN-13: 978-3-446-41393-1 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41393-1

Mehr

Modulbeschreibung Fakultät Gebäudetechnik und Informatik gültig ab WS 2010/11

Modulbeschreibung Fakultät Gebäudetechnik und Informatik gültig ab WS 2010/11 Modul-Nr.: Studiengang: Angewandte Informatik Modulname: Datenbanken (DB) : Datenbanken 1 (DB1) Datenbanken 2 (DB2) Status: Pflicht alle Niveaustufe: Bachelor Verantwortliche/r: Empfohlenes Semester: DB1

Mehr

INFORMATIK ROEING UND FRITZE ORACLE DBMS UND SQL. Seminarunterlage

INFORMATIK ROEING UND FRITZE ORACLE DBMS UND SQL. Seminarunterlage ORACLE UND SQL Seminarunterlage 0-2 ORACLE IMPRESSUM Version: 5.01 DID: Autoren: Herausgeber: ORA_SQL Jörg Fritze Frank Roeing Roeing und Fritze Schulungen GbR Alte Straße 65 D-44143 Dortmund Telefon:

Mehr

SQL Server 2005. Eine umfassende Einführung

SQL Server 2005. Eine umfassende Einführung SQL Server 2005 Eine umfassende Einführung E-Mail: petkovic@fh-rosenheim.de Lektorat: Barbara Lauer, Bonn Copy-Editing: Sandra Gottmann, Münster Satz: Just in Print, Bonn Herstellung: Birgit Bäuerlein

Mehr

ORACLE und IBM DB2 Datentypen 14.12.2011

ORACLE und IBM DB2 Datentypen 14.12.2011 1/27 ORACLE und IBM DB2 Datentypen PHP-User-Group Stuttgart 14.12.2011 ORACLE Datentypen ein Überblick IBM DB2 Datentypen ein Überblick 2/27 ORACLE und IBM DB2 Datentypen Wer Wer bin bin ich ich?? Thomas

Mehr

SQL SERVER 2014 DER SCHNELLE EINSTIEG

SQL SERVER 2014 DER SCHNELLE EINSTIEG klemens KONOPASEK SQL SERVER 2014 DER SCHNELLE EINSTIEG 4 1 Der SQL Server 2014 stellt sich vor A Atomicity: Zusammenhängende Vorgänge werden entweder zur Gänze oder gar nicht durchgeführt. Gehören mehrere

Mehr

Inhaltsverzeichnis. Teil I Installation, Architektur und Infrastruktur 15

Inhaltsverzeichnis. Teil I Installation, Architektur und Infrastruktur 15 Teil I Installation, Architektur und Infrastruktur 15 1 Einleitung................................................ 17 1.1 Der Aufbau des Buches..................................... 18 1.2 Konventionen.............................................

Mehr

Kompakt-Information zum Fernstudium

Kompakt-Information zum Fernstudium Kompakt-Information zum Fernstudium Datenbank-Programmierung (für Oracle) KI 965890 Inhaltsverzeichnis Übersicht Der Lehrgang Datenbank-Programmierung (für Oracle) 3 Gute Aussichten Ihre beruflichen Chancen

Mehr

Kontrollstrukturen - Universität Köln

Kontrollstrukturen - Universität Köln Kontrollstrukturen - Universität Köln Mario Manno Kontrollstrukturen - Universität Köln p. 1 Was sind Sprachen Auszeichnungssprachen HTML, XML Programmiersprachen ASM, Basic, C, C++, Haskell, Java, Pascal,

Mehr

3 Richtlinienbasierte Verwaltung und Multi-Server- Administration

3 Richtlinienbasierte Verwaltung und Multi-Server- Administration Richtlinienbasierte Verwaltung und Multi-Server-Administration 3 Richtlinienbasierte Verwaltung und Multi-Server- Administration SQL Server Management Studio bietet eine Reihe von Unterstützungsmöglichkeiten,

Mehr

Daten-Ex- und Import mit Oracle und PostgreSQL

Daten-Ex- und Import mit Oracle und PostgreSQL Daten-Ex- und Import mit Oracle und PostgreSQL Holger Jakobs bibjah@bg.bib.de 2004-09-07 Inhaltsverzeichnis 1 Grund für Daten-Im- und -Exporte 1 2 Werkzeuge 1 2.1 Export mit pg_dump von PostgreSQL.....................

Mehr

Themen des Kapitels. Aufbau eines Database Management Systems (DBMS) Oracle Architektur Oracle Tools. 2.1 Übersicht

Themen des Kapitels. Aufbau eines Database Management Systems (DBMS) Oracle Architektur Oracle Tools. 2.1 Übersicht 2 Oracle Architektur und Tools Einführung in die Architektur und Tools von Oracle. 2.1 Übersicht Themen des Kapitels - Oracle Architektur und Tools Themen des Kapitels Aufbau eines Database Management

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

BIW - Überblick. Präsentation und Discoverer Demonstration - Teil 1 - Humboldt Universität zu Berlin am 10. Juni 2004

BIW - Überblick. Präsentation und Discoverer Demonstration - Teil 1 - Humboldt Universität zu Berlin am 10. Juni 2004 BIW - Überblick Präsentation und Discoverer Demonstration - Teil 1 - Humboldt Universität zu Berlin am 10. Juni 2004 Annegret Warnecke Senior Sales Consultant Oracle Deutschland GmbH Berlin Agenda Überblick

Mehr

C vs. C++ Sebastian Meyer. Proseminar C - Grundlagen und Konzepte. Universität Hamburg

C vs. C++ Sebastian Meyer. Proseminar C - Grundlagen und Konzepte. Universität Hamburg C vs. C++ Sebastian Meyer Universität Hamburg Proseminar C - Grundlagen und Konzepte 2013 1 / 31 Gliederung 1 Einführung 2 Vergleich der Spracheigenschaften 3 Neue Sprachelemente in C++ 4 Fazit 5 Zusammenfassung

Mehr

5 Schemadefinition in objektrelationalen Datenbanksystemen

5 Schemadefinition in objektrelationalen Datenbanksystemen 75 5 Schemadefinition in objektrelationalen Datenbanksystemen In diesem Kapitel wird die Definition objektrelationaler Schemata am Beispiel von DB2 konkretisiert. Zu diesem Zweck wird zunächst das DBMS

Mehr

Marcus Throll. f. / Galileo Computing

Marcus Throll. f. / Galileo Computing Marcus Throll f. / Galileo Computing Inhalt Vorwort zur 2. Auflage 13 Vorwort zur 1. Auflage 15 Inhalt der Buch-CO 17 Einführung 21 1.1 Was istmysql? 23 1.2 Die wichtigsten Eigenschaften von MySQL 26 1.3

Mehr

Grundkurs MySQL und PHP

Grundkurs MySQL und PHP Martin Pollakowski Grundkurs MySQL und PHP So entwickeln Sie Datenbanken mit Open-Source-Software vieweg Inhaltsverzeichnis Anwendung und Nutzen von Datenbanken 1 1.1 Was ist eine Datenbank? 1 1.2 Abgrenzung

Mehr

Safexpert Oracle Datenbank Konnektor. Stand: 02.01.2012. IBF-Automatisierungs-und Sicherheitstechnik GmbH A-6682 Vils Bahnhofstraße 8

Safexpert Oracle Datenbank Konnektor. Stand: 02.01.2012. IBF-Automatisierungs-und Sicherheitstechnik GmbH A-6682 Vils Bahnhofstraße 8 Safexpert Oracle Datenbank Konnektor Stand: 02.01.2012 IBF-Automatisierungs-und Sicherheitstechnik GmbH A-6682 Vils Bahnhofstraße 8 Tel.: +43 (0) 5677 5353 0 E-Mail: office@ibf.at 1 Kurzüberblick über

Mehr

Microsoft SQL Server 2005 für Administratoren

Microsoft SQL Server 2005 für Administratoren Microsoft SQL Server 2005 für Administratoren Irene Bauder ISBN 3-446-22800-4 Vorwort Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22800-4 sowie im Buchhandel Vorwort 5 Vorwort

Mehr

Forms Survival Kit Fehlersuche in WebForms-Applikationen

<Insert Picture Here> Forms Survival Kit Fehlersuche in WebForms-Applikationen Forms Survival Kit Fehlersuche in WebForms-Applikationen Jürgen Menge Oracle Deutschland Forms Survival Kit Fehlersuche in WebForms-Applikationen Einstieg Fehlersuche in Komponenten

Mehr