|
Oracle SQL und Oracle PL/SQL
Das Seminar entführt die Teilnehmer in die Welt der relationalen Datenbanken.
Antworten auf die Fragestellungen "was ist eine Datenbank?", "warum
nutzt man in einem Unternehmen Datenbanken?" oder "welche Sprachstandards
gelten in Datenbanken?" sind nach dem Besuch keine Herausforderung
mehr.
Unsere Trainer weisen die Seminarteilnehmer in die Datenbank-Sprache SQL
(Structured Query Language) und die Oracle-Programmiersprache PL/SQL
(Procedural Language SQL) ein. In Theorie und Praxis vermittelt unser Lernpersonal
die vielfältigen Möglichkeiten, die Oracle bietet. Gemeinsam werden
relationale Datenbanken erstellt, Spalten und Zeilen abgefragt, Tabellen verknüpft,
spezifische Bedingungen an die Daten gestellt und die Programmierung
von eigenen Funktionen vorgenommen.
- Teilnehmerkreis
Dieser Kurs wendet sich an alle Oracle-Interessierten
- Voraussetzungen
Dieser Kurs hat keine Voraussetzungen
- Dauer
3-5 Tage, nach Absprache
Inhalt
SQL
Einführung
- Warum gibt es Datenbanken?
- Regeln von Codd
- Die Tabelle
- Die Beispiel-Tabellen
SELECT
- Einfache SELECTs
- WHERE - Der Zeilenfilter
- Operatoren:
- Wildcards:
- Tests auf NULL
Funktionen
- Konvertierungsfunktionen - to_number, to_date, to_char
- Das Datum
- Datumsformate
- Arithmetische Funktionen
- Zeichenkettenfunktionen
- Weitere Funktionen
Gruppenfunktionen
Hierarchie
JOINs
- EQUI-JOIN
- NON-EQUI-JOIN
- SELF-JOIN
- OUTER-JOIN
- JOIN-Regeln
Unterabfragen - Subquery
Mengenoperatoren
DML-Anweisungen (insert, update, delete)
- INSERT
- UPDATE
- DELETE
- Transaktionssteuerung
- COMMIT
- ROLLBACK
- Was ist eine Transaktion?
- Wann sehen Datenbanknutzer Veränderungen?
- Konsistenz der Daten, Sperrenkonzept!
- READ ONLY Transaktione
DDL-Anweisungen (create, alter, rename,...)
- Tabellen erstellen, createtable
- Datentypen
- Constraints
- Tabellen ändern, alter table
- Tabellen umbenennen, rename table
- Tabellen leeren, truncate table
- Tabellen löschen, drop table
- Allgemeines zu Tabellen - Befehlen
Weitere Objekte in der Datenbank
- Schema
- Synonyme
- Sequences
- Views
- Sicherheit
- Komfort
- Spaß
- Beispiele
Indizes
- Warum gibt es Indexes?
- Wie ist ein Index aufgebaut?
- Wann wird ein Index verwendet?
- Wieviele Indizes sind notwendig?
Data Dictionary
- SQL*Plus
- Ausgabeformatierung
- Start von Skripten
- Variable
- Spool
- Skripterstellung
PL/SQL
- Variable deklarieren
- Skalare Datentypen
- Das Attribut %type
- Das Attribut %rowtype
- LOB-Datentypen
- PL/SQL-Tabellen (Arrays)
Der PL/SQL-Block
- DECLARE BEGIN EXCEPTION END
- IF THEN ELSIF ELSE END IF
- LOOP ... END LOOP
- WHILE-Schleifen
- FOR-Schleifen
- SELECT INTO FROM
- SQL-Cursor
- INSERT UPDATE DELETE
Explizite Cursor
- Deklaration
- Öffnen (OPEN)
- Abrufen (FETCH)
- Schließen (CLOSE)
- %ISOPEN, %NOTFOUND, %ROWCOUNT
- Cursor FOR Schleifen
- FOR UPDATE
- WHERE CURRENT OF
Exceptions
- Fehler Abfangen
- Vordefinierte Exceptions
- Nicht-vordefinierte Fehler abfangen
- Benutzerdefinierte Fehler abfabgen
- Wie werden Fehler propagiert
- Die Prozedure RAISE_APPLICATION_ERROR
Funktionen und Prozeduren
- IN, OUT und IN OUT-Parameter
- DEFAULT Werte für Parameter
- Prozeduren aufrufen
- Exceptions
- Unterprogramme verwalten
- USER_OBJECTS
- USER_SOURCE
- USER_ERRORS
PL/SQL-Pakete (Packages)
- Komponenten
- Vorteile
- Package-Spezifikation erstellen
- Package Body erstellen
- Überladung
- Vorwärtsdeklaration
- Beständiger Status von Package-Variablen
- DBMS_JOB
- UTL_FILE
LOBs (Large Objects)
- LONG und LOB im Vergleich
- LOB-Typen
- Aufbau eines LOB
- BFILES
- CLOB und NCLOB
- DBMS_LOB.READ
- DBMS_LOB.WRITE
Datenbank-Trigger
- Trigger-Typen
- BEFORE-AFTER, FOR EACH ROW-STATEMENT
- DML-Trigger
- INSTEAD-OF-Trigger
- LOGON - LOGOFF - Trigger
|