Verwendung eines RDBMS Prof. Dr. Andreas Schmietendorf 1
Aufgabenbeschreibung Prof. Dr. Andreas Schmietendorf 2
Zielstellung Die Vorlesung konzentriert sich auf die Verwendung relationaler Datenbankmanagement-Systeme. Im Rahmen dieser einführenden Übung geht es darum ein solches System kennen zu lernen. Dabei sollen die bereitgestellten Funktionalitäten analysiert werden. Darüber hinaus sollen einfache SQL-Anweisungen (SELECT, INSERT) ausgeführt werden. Bevor diese Operationen ausgeführt werden können, gilt es das Datenbank-Schema zu analysieren. Prof. Dr. Andreas Schmietendorf 3
Beispieldatenbank Bei der bereitgestellten Datenbank (Datei EMPLOYEE.FDB) handelt es sich um ein System zur Verwaltung der Mitarbeiter, der Abteilungen, der Projekte und der Umsätze eines global tätigen Unternehmens. Neben der bereitgestellten Struktur (Schema) enthält diese Datenbank bereits Nutzdaten. Bei ggf. durchgeführten Eingaben kann es daher zu potentiellen Konflikten (Schlüsselattribute, Typkonformitäten, Wertebereiche, ) kommen. Prof. Dr. Andreas Schmietendorf 4
Aufgabe 1 (ISQL) Verwenden Sie das Firebird ISQL-Tool für die folgenden Aufgaben: Anmelden an die Datenbank EMPLOYEE.FDB SQL-Anfragen für folgende Tabelle ausführen - Tabelle COUNTRY (select * from country) - Tabelle JOB (select * from job) Systeminformationen zur Datenbank ausgeben und interpretieren Bem.: Firebird - QuickStart Guide als Hilfe verwenden! Prof. Dr. Andreas Schmietendorf 5
Aufgabe 2 (non SQL) Analysieren und dokumentieren Sie die Struktur (Teil des Datenbankschema) und den Inhalt der folgenden Tabellen, verwenden Sie dafür den Property Editor der IBOConsole: - CUSTOMER - DEPARTMENT - EMPLOYEE - COUNTRY Inhalt der Dokumentation! - Tabellenstruktur - Verwendete Attribute - Genutzte Datentypen Prof. Dr. Andreas Schmietendorf 6
Aufgabe 3 (IBO - SQL) Schreiben Sie entsprechende SQL-Statements: Auswahl jeweils aller Dateneinträge der vorhergehend mit Hilfe des Properties-Dialoges analysierten Tabellen: - CUSTOMER - DEPARTMENT - EMPLOYEE - COUNTRY Wählen Sie aus der Tabelle DEPARTMENT die Attribute department, location und phone_no aus. Prof. Dr. Andreas Schmietendorf 7
Aufgabe 4 (IBO - SQL) Wählen Sie aus der Tabelle DEPARTMENT die Attribute dept_no, department, location und budget aus. Bei den selektierten Datensätzen soll das budget jeweils größer als 600000 sein. Wählen Sie aus der Tabelle CUSTOMER die Tupel aus bei welchen das Attribut city mit Milan belegt ist. Wie viele Kunden (CUSTOMER) hat das Unternehmen in den USA, schreiben Sie zur Analyse eine entsprechende SQL-Anweisung. Prof. Dr. Andreas Schmietendorf 8
Aufgabe 5 (IBO - SQL) Wählen Sie aus der Tabelle DEPARTMENT das Attribut location aus, verhindern Sie dabei die Ausgabe doppelter Tupel mittels der distinct-anweisung. Schreiben Sie SQL-Anfragen für die Tabelle EMPLOYEE. Wie viele Mitarbeiter (employees) arbeiten in den USA, Canada, Japan, England, Frankreich und Italien. Berücksichtigen Sie das Attribut job_country für diese Analyse. Prof. Dr. Andreas Schmietendorf 9
Aufgabe 6 (IBO - SQL) Fügen Sie einen neuen Datensatz (SQL-Befehl insert) in die Tabelle COUNTRY der Mitarbeiter-Datenbank ein. Berücksichtigen Sie das Beispiel am Ende dieser Anleitung! Versuchen Sie den unveränderten SQL-Befehl ein weiteres Mal auszuführen. Worin liegen die Gründe für den zurückgegebenen SQL-Fehler? Verändern Sie die SQL-Anweisung so, dass diese vom DBMS akzeptiert wird. Prof. Dr. Andreas Schmietendorf 10
Hinweise zur Verwendung des Firebird-DBMS Prof. Dr. Andreas Schmietendorf 11
Firebird OpenSource RDBMS Quelle: http://www.firebirdsql.org/ Prof. Dr. Andreas Schmietendorf 12
Firebird Control Center Prof. Dr. Andreas Schmietendorf 13
Interactive SQL SQL-Test: selct * from country Verbindung und Anmeldung CONNECT \employee.fdb ; USER SYSDBA PASSWORD masterkey Prof. Dr. Andreas Schmietendorf 14
Hinweise zur Verwendung der IBOConsole Prof. Dr. Andreas Schmietendorf 15
IBOConsole Zugriff auf Datenbanken verwaltet unter: - Interbase (Borland) - Firebird (Open Source) Verfügbare Funktionalitäten - Erzeugen einer neuen Datenbank - Registrierung existierender Datenbanken - Verwendung von SQL-Anweisungen Administration von Datenbanken - Administration von Benutzern - Berücksichtigung von Zugriffsrechten - Backup & Recovery Prof. Dr. Andreas Schmietendorf 16
IBOConsole Prof. Dr. Andreas Schmietendorf 17
Prozedur zum Login SYSDBA masterkey Prof. Dr. Andreas Schmietendorf 18
Registrieren einer Datenbank DB File DB Name Nutzername Passwort Prof. Dr. Andreas Schmietendorf 19
Nutzen der Datenbank Interaktiver SQL Dialog Datenbank (EMPLOYEE.FDB) DB Tabellen Prof. Dr. Andreas Schmietendorf 20
Hinweise und SQL-Beispiele Prof. Dr. Andreas Schmietendorf 21
Property Editor Prof. Dr. Andreas Schmietendorf 22
select Statement 1 Prof. Dr. Andreas Schmietendorf 23
select Statement 2 Prof. Dr. Andreas Schmietendorf 24
select Statement 3 Prof. Dr. Andreas Schmietendorf 25
insert Statement Prof. Dr. Andreas Schmietendorf 26
Organisation Prof. Dr. Andreas Schmietendorf 27
Organisation der Übung Bitte berücksichtigen Sie die folgende Vorgehensweise: Kombination von Einzel- und Gruppenarbeit! Vorgeschlagene Methode zur Aufgabenlösung - Analyse der kompletten Aufgabenstellung (alle Folien!) - Ausführen der Übungen 1 bis 6 (jeder Student für sich 60 min) - Diskussion der erreichten Ergebnisse und ggf. Korrektur (45 min) - Erstellung eines zusammenfassenden Protokolls (45 min) Zeit für die Durchführung: ca. 150 min Bereitstellung eines entsprechenden Protokolls je Gruppe Prof. Dr. Andreas Schmietendorf 28