Vorlesung Datenbankmanagementsysteme

Größe: px
Ab Seite anzeigen:

Download "Vorlesung Datenbankmanagementsysteme"

Transkript

1 Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-1

2 Themen der Vorlesung Grundlagen Architekturen Modellierung Relationale Datenbanken Relationaler DB-Entwurf SQL zur Datendefinition Sichten, Zugriffskontrolle, Trigger SQL zur Datenabfrage/- manipulation SQL zur Datenanalyse Programmiersprachenanbindung Transaktionsverwaltung Nicht-relationale Inhalte Phys. Datenbankdesign und Zugriffsstrukturen Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-2

3 Wiederholung Gliederung der Vorlesung - OLAP, OLTP, Aggregatfunktionen, Group by, Window-Konstrukt Trigger Sichten Zugriffschutz Zusammenfassung Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-3

4 Wiederholung Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-4

5 Ergebnis (Würfel) Produkt Summe Haushalt Elektro Kosmetik Summe Zeitraum Sachsen- Anhalt Thüringen Summe Region Kennzahl Umsatz Quelle: Saake/Sattler Vorlesung Data-Warehouse-Technologien Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-5

6 Ergebnis (Bericht) Umsatz Kosmetik Elektro Haushalt SUMME 1998 Sachsen-Anhalt Thüringen SUMME Sachsen-Anhalt Thüringen SUMME SUMME Quelle: Saake/Sattler Vorlesung Data-Warehouse-Technologien Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-6

7 Begriffe OLAP (Online Analytical Processing) - explorative, interaktive Analyse auf Basis des konzeptuellen Datenmodells Klassische operative Informationssysteme Online Transactional Processing (OLTP) - Erfassung und Verwaltung von Daten - Verarbeitung unter Verantwortung der jeweiligen Abteilung - Transaktionale Verarbeitung: kurze Lese-/ Schreibzugriffe auf wenige Datensätze Data Warehouse - Analyse im Mittelpunkt - lange Lesetransaktionen auf vielen Datensätzen - Integration, Konsolidierung und Aggregation der Daten Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-7

8 Syntax Group By select... from... [where...] [group by attributliste ] [having bedingung ] Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie # Anfragen mit SQL

9 Beispiel Aggregatfunktion sum Aggregatfuktionen: Beispiel Gesamtwert aller Alben: select sum(preis) from Album erzeugt folgende Ergebnistabelle: Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie # Anfragen mit SQL

10 Beispiel Gruppierungsselektion mit having mit der having-klausel werden Gruppen ausgewählt Vorsicht: having nicht gleich where!!!! Quelle: K. Schneider Vorlesung Datatenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-10

11 Das Window-Konstrukt Wie Group by: Skalare Werte pro Gruppe berechnen Aber: jede (group by eine) Zeile im Ergebnis ausgeben Quelle: K. Schneider Vorlesung Datatenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-11

12 Das Window-Konstrukt Mehrere Gruppierungen in einem SFW-Block Quelle: K. Schneider Vorlesung Datatenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-12

13 Trigger Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-13

14 Trigger Trigger: Anweisung/Prozedur, die bei Eintreten eines bestimmten Ereignisses automatisch vom DBMS ausgeführt wird Anwendung: - Erzwingen von Integritätsbedingungen ( Implementierung von Integritätsregeln) - Auditing von DB-Aktionen - Propagierung von DB-Änderungen Definition: create trigger on <Operation> : <Anweisungen> Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-14

15 Beispiel für Trigger Realisierung eines berechneten Attributs durch zwei Trigger: - Einfügen von neuen Aufträgen create trigger Auftragszählung+ on insertion of Auftrag A: update Kunde set AnzAufträge = AnzAufträge + 1 where KName = new A.KName - analog für Löschen von Aufträgen: create trigger Auftragszählungof Auftrag A: update - 1 Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-15

16 Trigger Entwurf und Implementierung Spezifikation von 1. Ereignis und Bedingung für Aktivierung des Triggers 2. Aktion(en) zur Ausführung Syntax in SQL:2003 festgelegt verfügbar in den meisten kommerziellen Systemen (aber mit anderer Syntax) Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-16

17 SQL:2003 Trigger Syntax SQL:2003-Trigger Syntax: create trigger <Name> after before <Ereignis> on <Relation> [ when <Bedingung> ] begin atomic <SQL-Anweisungen> end Ereignis: insert update [ of <Liste von Attributen> ] delete Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-17

18 Trigger Syntax II for each row bzw. for each statement: Aktivierung des Triggers für jede Einzeländerungen einer mengenwertigen Änderung oder nur einmal für die gesamte Änderung before bzw. after: Aktivierung vor oder nach der Änderung referencing new as bzw. referencing old as: Binden einer Tupelvariable an die neu eingefügten bzw. gerade gelöschten ( alten ) Tupel einer Relation Tupel der Differenzrelationen Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-18

19 Beispiel-Trigger I Kein Kundenkonto darf unter 0 absinken create trigger bad_account after update of Kto on KUNDE referencing new as INSERTED when (exists (select * from INSERTED where Kto < 0) ) begin atomic rollback; end ähnlicher Trigger für insert Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-19

20 Beispiel-Trigger II Kunden müssen gelöscht werden, wenn sie keine Waren mehr bestellt haben create trigger bad_customer after delete on BESTELLUNG referencing old as O for each row when (not exists (select * from BESTELLUNG B where B.KNr = O.KNr)) begin atomic delete from KUNDE where KNr = O.KNr; end Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-20

21 Trigger in ORACLE I Implementierung in PL/SQL Notation create or replace trigger <triggername> before/after insert or update or delete on <tablename> REFERENCING NEW AS <newrow> OLD AS <oldrow> for each row/for each statement when (<Bedingung>) DECLARE variablen deklaration BEGIN if (INSERTING/UPDATING/DELETING) then... end if; END <triggername>; Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-21

22 Trigger in Oracle II Anweisungsebene (statement level trigger): Trigger wird ausgelöst vor bzw. nach der DML-Anweisung Tupelebene (row level trigger): Trigger wird vor bzw. nach jeder einzelnen Modifikation ausgelöst (one tuple at a time) - Prädikat zur Einschränkung (when) - Zugriff auf altes (:old.col) bzw. neues (:new.col) Tupel - für delete: nur (:old.col) - für insert: nur (:new.col) - in when-klausel nur (new.col) bzw. (old.col) Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-22

23 Trigger in ORACLE III Transaktionsabbruch durch raise_application_error(code, message) Unterscheidung der Art der DML-Anweisung if deleting then... end if; if updating then... end if; if inserting then... end if; Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-23

24 Trigger in ORACLE Beispiel I Beispiel Kein Kundenkonto darf unter 0 absinken create or replace trigger bad_account after insert or update of Kto on KUNDE for each row when (:new.kto < 0) begin raise_application_error(-20221, Nicht unter 0 ); end; Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-24

25 Trigger in ORACLE Beispiel II CREATE OR REPLACE TRIGGER MEINTRIGGER BEFORE INSERT OR UPDATE ON MEINETABELLE REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROW BEGIN IF (INSERTING) THEN SELECT SYSDATE INTO :NEW.CHG_DATE FROM DUAL; SELECT SYSDATE INTO :NEW.CRE_DATE FROM DUAL; ELSIF (UPDATING) THEN SELECT SYSDATE INTO :NEW.CHG_DATE FROM DUAL; END IF; END; / Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-25

26 Sichten Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-26

27 Sichten = Externes Schema Externes Schema 1... Externes Schema n Anfragebearbeitung Konzeptuelles Schema Internes Schema Datendarstellung Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-27

28 Sichten: Konzept virtuelle Relationen (bzw. virtuelle Datenbankobjekte in anderen Datenmodellen) (englisch view ) abgeleitete Sicht auf eine Datenbank virtuelle oder berechnete Datenbank Sichten sind externe DB-Schemata folgend der 3-Ebenen- Schemaarchitektur Sichtdefinition benötigt Relationenschema (implizit oder explizit) Berechnungsvorschrift für virtuelle Relation, etwa SQL-Anfrage Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-28

29 Zugriffschutz durch Sichten Beispielrelation: Prüf(Studienfach, Fach, Student, Prüfer, Datum, Note) Relevante Sichten: Fakultät sieht nur die Daten der Studenten Prüfungsamt sieht alle Daten Studenten dürfen ihre eigenen Daten sehen (aber nicht ändern) Stipendienkommission darf Durchschnittsnoten der Studenten sehen Dekan darf statistische Daten des letzten Jahrgangs sehen Sekretariate dürfen Prüfungsdaten ihrer Professoren einsehen Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-29

30 Sichten: Vorteile Vereinfachung von Anfragen für den Benutzer der Datenbank, etwa indem oft benötigte Teilanfragen als Sicht realisiert werden Möglichkeit der Strukturierung der Datenbankbeschreibung Datenbankbeschreibung, zugeschnitten auf Benutzerklassen logische Datenunabhängigkeit ermöglicht Stabilität der Schnittstelle für Anwendungen gegenüber Änderungen der Datenbankstruktur (entsprechend in umgekehrter Richtung) Beschränkung von Zugriffen auf eine Datenbank Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-30

31 Sichten: Nachteile automatische Anfragetransformation Durchführung von Änderungen auf Sichten Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-31

32 Sichten: Definition durch SQL create view <Sichtname> [Schemadeklaration] as <SQL-Anfrage> [with check option] Sichtname: Name der virtuellen Relation Schemadeklaration (optional): Festlegung von Namen für berechnete Spalten SQL-Anfrage: Vorschrift zur Berechnung der Spalten Weitere optionaler Teil: Festlegung, ob Änderungen auch den nicht sichtbaren Teil der Datenbank beeinflussen können Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-32

33 Sichten Beispiele alle Alben aus Genre Rock : create view RockAlben as select Titel, Name, Jahr from Album, Musiker where Album.MNr = Musiker.MNr and Genre = Rock create view NeueMusiker as select Name, Land from Musiker where MNr in (select MNr from Album where Jahr = (select max(jahr) from Album)) Musiker mit Alben aus dem aktuellen Jahr Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-33

34 Sichten: Probleme Durchführung von Änderungen auf Sichten Allgemeine Schwierigkeiten unabhängig von verwendeter Sprache Änderungen auf beliebigen berechneten Datenbankobjekten (Sichten) nicht immer auf vernünftige Änderungen der Basisdatenbank umsetzbar Durch Verlust von Informationen bei einschränkenden Sichten (Selektion-, Projektion-Sichten) Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-34

35 Sichten: Beispiel Problemfälle Beispielszenario im Relationenmodell MGA(Mitarbeiter, Gehalt, Abteilung) AL(Abteilung, Leiter) MGA speichert Daten über Zugehörigkeit von Mitarbeitern zu Abteilungen und deren jeweiliges Gehalt AL gibt für jede Abteilung den Abteilungsleiter an Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-35

36 Projektionssicht MA := π Mitarbeiter,Abteilung (MGA) In SQL mit create view-anweisung: create view MA as select Mitarbeiter, Abteilung from MAG Änderungsanweisung für die Sicht MA: insert into MA values ( Zuse, Info ) Korrespondierende Anweisung auf der Basisrelation MGA: insert into MGA values ( Zuse, null, Info ) Problem der Konsistenzerhaltung, falls Gehalt als not null deklariert! Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-36

37 Selektionssicht MG := σ Gehalt>20 (π Mitarbeiter,Gehalt (MGA)) create view MG as select Mitarbeiter, Gehalt from MGA where Gehalt > 20 Tupelmigration: Ein Tupel MGA( Zuse, 15, Info ) wird aus der Sicht herausbewegt update MG set Gehalt = 15 where Mitarbeiter = Zuse Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-37

38 Kontrolle Tupelmigration create view MG as select Mitarbeiter, Gehalt from MGA where Gehalt > 20 with check option with check option prüft die Einhaltung der where- Klausel beim Einfügen und Ändern Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-38

39 Verbundsichten I MGAL := MAG AL create view MGAL as select Mitarbeiter, Gehalt, MGA.Abteilung, Leiter from MGA, AL where MGA.Abteilung = AL.Abteilung Änderungsoperationen in der Regel nicht eindeutig übersetzbar insert into MGAL values ( Turing, 30, Info, Zuse ) Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-39

40 Verbundsichten II Transformation der Änderung zu und insert into MGA values ( Turing, 30, Info ) 1. Einfügen in AL insert into AL values ( Info, Zuse ) 2. oder alternativ: Änderung in AL update AL set Abteilung = Info where Leiter = Zuse Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-40

41 Aggregierungssichten create view AS (Abteilung, SummeGehalt) as select Abteilung, sum(gehalt) from MAG group by Abteilung Folgende Änderung ist nicht eindeutig umsetzbar: update AS set SummeGehalt = SummeGehalt where Abteilung = Info Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-41

42 Probleme bei Aggregierungssichten I create view DS (Abteilung, GehaltsSumme) as select Abteilung, sum(gehalt) from MAG group by Abteilung Anfrage: Abteilungen mit hohen Gehaltsausgaben select Abteilung from DS where GehaltsSumme > 500 Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-42

43 Probleme bei Aggregierungssichten II Nach syntaktischer Transformation: select Abteilung from MGA where sum(gehalt) > 500 group by Abteilung keine syntaktische korrekte SQL-Anfrage korrekt wäre: select Abteilung from MGA group by Abteilung having sum(gehalt) > 500 Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-43

44 Probleme mit Aggregierungssichten III Anfrage select avg (GehaltsSumme) from DS müsste wie folgt transformiert werden: select avg(sum (Gehalt)) from MGA group by Abteilung aber: geschachtelte Aggregatfunktionen sind in SQL nicht erlaubt! Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-44

45 Zusammenfassung der Sichten-Probleme Verletzung der Schemadefinition Vermeidung von Integritätsverletzungen (z.b. durch Einfügen von Nullwerten bei Projektionssichten) Datenschutz Seiteneffekte auf nicht-sichtbaren Teil der Datenbank vermeiden (z.b. Tupelmigration bei Selektionssichten) Auswahlproblem nicht immer eindeutige Transformation Aggregierungssichten keine sinnvolle Transformation möglich Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-45

46 Einschränkungen für Änderungsoperatione auf Sichten änderbar nur Selektions- und Projektionssichten (Verbund und Mengenoperationen nicht erlaubt) 1:1-Zuordnung von Sichttupeln zu Basistupeln: kein distinct in Projektionssichten Arithmetik und Aggregatfunktionen im select-teil sind verboten genau eine Referenz auf einen Relationsnamen im from-teil erlaubt (auch kein Selbstverbund) keine Unteranfragen mit Selbstbezug im where-teil erlaubt (Relationsname im obersten SFW-Block nicht in from-teilen von Unteranfragen verwenden) group by und having verboten Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-46

47 Rechtevergabe Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-47

48 Rechtevergabe zur Zugriffskontrolle Data Control Language DCL Rechtevergabe in Datenbanksystemen Zugriffsrechte (AutorisierungsID, DB-Ausschnitt, Operation) AutorisierungsID: interne Kennung eines Datenbankbenutzers DB-Ausschnitt: Relationen und Sichten Operation: Lesens, Einfügen, Ändern, Löschen Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-48

49 Rechtevergabe in SQL grant <Rechte> on <Tabelle> to <BenutzerListe> [with grant option] In <Rechte>-Liste: all bzw. Langform all privileges oder Liste aus select, insert, update, delete Hinter on: Relationen- oder Sichtname Hinter to: Autorisierungsidentifikatoren (auch public, group) spezielles Recht: Recht auf die Weitergabe von Rechten (with grant option) Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie # Rechtevergabe zur Zugriffskontrolle

50 Authorisierung für public create view MeineAufträge as select * from AUFTRAG where KName = user; grant select, insert on MeineAufträge to public; Jeder Benutzer kann seine Aufträge sehen und neue Aufträge einfügen (aber nicht löschen!). Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-50

51 Zurücknahme von Rechten revoke <Rechte> on <Tabelle> from <BenutzerListe> [restrict cascade ] restrict: Falls Recht bereits an Dritte weitergegeben: Abbruch von revoke cascade: Rücknahme des Rechts mittels revoke an alle Benutzer propagiert, die es von diesem Benutzer mit grant erhalten haben Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-51

52 Rollenmodell in SQL SQL-99: Definition von Rollen und Weitergabe der Rechte an diese Rollen Vorteil create role Administrator_Bibliotheksdatenbank Spezieller Nutzer nicht mehr Empfänger eines Rechtes, sonder die Rolle, die er einnimmt Erleichterung der Verwaltung z.b. beim Wechsel von Nutzern Menge der Rechte eines Nutzers := Menge der Rechte als Nutzer + Menge der Rechte in seinen Rollen Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-52

53 Trigger Zusammenfassung - Erweitere Integritätssicherung für verteilte Datenpflege - Automatisierung der Datenpflege Sichten und Probleme bei Änderungen Zugriffsschutz auf Schemaobjekte Vorlesung Datenbankmanagementsysteme Trigger, Sichten und Zugriffskontrolle M. Lange, S. Weise Folie #10-53

Sichten II. Definition einer Sicht. Sichten. Drei-Ebenen-Schema-Architektur. Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank

Sichten II. Definition einer Sicht. Sichten. Drei-Ebenen-Schema-Architektur. Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank Sichten II logische Datenunabhängigkeit (Sichten stabil bei Änderungen der Datenbankstruktur) Beschränkung von Zugriffen (Datenschutz) Definition

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse & Einführung Online Analytical Processing (OLAP) (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse M. Lange, S.

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Programmiersprachenanbindung (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme Programmiersprachenanbindung M. Lange, S. Weise Folie #11-1 Themen der Vorlesung

Mehr

Teil VIII Transaktionen, Integrität und Trigger

Teil VIII Transaktionen, Integrität und Trigger page.1 Teil VIII Transaktionen, Integrität und Trigger page.2 Transaktionen, Integrität und Trigger Transaktionen, Integrität und Trigger 1 Grundbegriffe 2 Transaktionsbegriff 3 Transaktionen in SQL 4

Mehr

6. Datenintegrität. Integritätsbedingungen

6. Datenintegrität. Integritätsbedingungen 6. Integritätsbedingungen dienen zur Einschränkung der Datenbankzustände auf diejenigen, die es in der realen Welt tatsächlich gibt. sind aus dem erstellten Datenmodell ableitbar (semantisch) und können

Mehr

3.17 Zugriffskontrolle

3.17 Zugriffskontrolle 3. Der SQL-Standard 3.17. Zugriffskontrolle Seite 1 3.17 Zugriffskontrolle Datenbanken enthalten häufig vertrauliche Informationen, die nicht jedem Anwender zur Verfügung stehen dürfen. Außerdem wird man

Mehr

Views in SQL. 2 Anlegen und Verwenden von Views 2

Views in SQL. 2 Anlegen und Verwenden von Views 2 Views in SQL Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2010-07-15 Inhaltsverzeichnis 1 Wozu dienen Views? 1 2 Anlegen und Verwenden von Views 2 3 Schreibfähigkeit von Views 3 3.1 Views schreibfähig

Mehr

Funktion definieren Gibt Summe der Gehälter zurück. Aufruf in einem SQL-Statement

Funktion definieren Gibt Summe der Gehälter zurück. Aufruf in einem SQL-Statement Funktion definieren Gibt Summe der Gehälter zurück Aufruf in einem SQL-Statement Dr. Christian Senger Einführung PL/SQL 1 Procedures & Transaktionen CREATE OR REPLACE PROCEDURE write_log ( log_code IN

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2015 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel 4.14.3 Bedingungen über Werte 4.14.4 Statische Integrität Zu jeder Tabelle werden typischerweise ein Primärschlüssel und möglicherweise weitere Schlüssel festgelegt (UNIQUE-Klausel). In jeder Instanz zu

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme SQL als Anfrage- und Datenmanipulationssprache (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL als DQL und DML M. Lange, S. Weise Folie #8-1 Themen

Mehr

Themenblock: Erstellung eines Cube

Themenblock: Erstellung eines Cube Themenblock: Erstellung eines Cube Praktikum: Data Warehousing und Data Mining Einführung relationale Datenbanken Problem Verwaltung großer Mengen von Daten Idee Speicherung der Daten in Form von Tabellen

Mehr

VO Datenmodellierung. Katrin Seyr

VO Datenmodellierung. Katrin Seyr Datenintegrität Datenintegrität VO Datenmodellierung Katrin Seyr Institut für Informationssysteme Technische Universität Wien Katrin Seyr Seite 1 Datenintegrität 1. Überblick Überblick 1 Überblick 2 Integritätsbedingungen

Mehr

Einführung relationale Datenbanken. Themenblock: Erstellung eines Cube. Schlüssel. Relationenmodell Relationenname Attribut. Problem.

Einführung relationale Datenbanken. Themenblock: Erstellung eines Cube. Schlüssel. Relationenmodell Relationenname Attribut. Problem. Themenblock: Erstellung eines Cube Einführung relationale Datenbanken Problem Verwaltung großer Mengen von Daten Praktikum: Data Warehousing und Data Mining Idee Speicherung der Daten in Form von Tabellen

Mehr

Vorlesung Datenbanken

Vorlesung Datenbanken Vorlesung Datenbanken Kapitel 6 Institut für Informatik 2 Überblick Assertions Trigger und Regeln Zugriffsrechte 3 Zugriffsrechte und Integritätsbedingungen Zugriffsrechte gewährleisten, dass nur autorisierte

Mehr

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung 6. Datenintegrität Motivation Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung nur sinnvolle Attributwerte (z.b. keine negativen Semester) Abhängigkeiten

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2008 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

Mehr

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem

Mehr

Unterabfragen (Subqueries)

Unterabfragen (Subqueries) Unterabfragen (Subqueries) Die kürzeste Formulierung ist folgende: SELECT Felderliste FROM Tabelle1 WHERE Tabelle1.Feldname Operator (SELECT Feldname FROM Tabelle2 WHERE Bedingung); wobei Tabelle1 und

Mehr

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt Andreas Heuer Gunter Saake Kai-Uwe Sattler Datenbanken kompakt Inhaltsverzeichnis Vorwort v 1 Was sind Datenbanken 1 1.1 Warum Datenbanken 1 1.2 Datenbanksysteme 4 1.3 Anforderungen: Die Codd'schen Regeln

Mehr

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL Betreuer: Sascha Kriewel, Tobias Tuttas Raum: LF 230 Bearbeitung: 26., 27. und 29. Juni 2006 Datum Team (Account) Vorbereitung Präsenz Aktuelle Informationen, Ansprechpartner und Material unter: http://www.is.inf.uni-due.de/courses/dbp_ss07/index.html

Mehr

Terminierungs-Analyse von SQL-Triggern. Sommersemester 05 T. Jahn Seminar Intelligente Datenbanken SQL-Trigger: Terminierungs-Analyse 1

Terminierungs-Analyse von SQL-Triggern. Sommersemester 05 T. Jahn Seminar Intelligente Datenbanken SQL-Trigger: Terminierungs-Analyse 1 Terminierungs- von SQL-Triggern T. Jahn Seminar Intelligente Datenbanken SQL-Trigger: Terminierungs- 1 Terminierungs- von SQL-Triggern Seminar Intelligente Datenbanken Prof. Dr. R. Manthey Andreas Behrend

Mehr

DB2 SQL, der Systemkatalog & Aktive Datenbanken

DB2 SQL, der Systemkatalog & Aktive Datenbanken DB2 SQL, der Systemkatalog & Aktive Datenbanken Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Auf DB2 Datenbanken zugreifen DB2 Datenbanken benutzen Abfragen ausführen Den Systemkatalog

Mehr

6. Sichten, Integrität und Zugriffskontrolle. Vorlesung "Informa=onssysteme" Sommersemester 2015

6. Sichten, Integrität und Zugriffskontrolle. Vorlesung Informa=onssysteme Sommersemester 2015 6. Sichten, Integrität und Zugriffskontrolle Vorlesung "Informa=onssysteme" Sommersemester 2015 Überblick Sichten Integritätsbedingungen Zugriffsrechte SQL- Schema und SQL- Katalog Das Informa=onsschema

Mehr

Referentielle Integrität

Referentielle Integrität Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische

Mehr

Referentielle Integrität

Referentielle Integrität Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische

Mehr

Benutzerverwaltung, Sichten und Datenintegrität

Benutzerverwaltung, Sichten und Datenintegrität Benutzerverwaltung, Sichten und Einige Vergleiche zwischen MySQL, Oracle und PostgreSQL OStR Michael Dienert, StR Ahmad Nessar Nazar 29. November und 30. November 2011 1 von 113 OStR Michael Dienert, StR

Mehr

Objektrelationale und erweiterbare Datenbanksysteme

Objektrelationale und erweiterbare Datenbanksysteme Objektrelationale und erweiterbare Datenbanksysteme Erweiterbarkeit SQL:1999 (Objekt-relationale Modellierung) In der Vorlesung werden nur die Folien 1-12 behandelt. Kapitel 14 1 Konzepte objekt-relationaler

Mehr

Datenbanksysteme I. Klausur zum Praktikum. Mehrere Professoren prüfen mit genau einem Beisitzer genau einen Studenten.

Datenbanksysteme I. Klausur zum Praktikum. Mehrere Professoren prüfen mit genau einem Beisitzer genau einen Studenten. Lehrstuhl für Datenbanken und Informationssysteme Wintersemester 1999/2000 Universität Augsburg, Institut für Informatik 25. Februar 2000 Prof. Dr. Werner Kießling A. Leubner, M. Wagner Datenbanksysteme

Mehr

Kapitel 5: Mehr zu SQL

Kapitel 5: Mehr zu SQL Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für tenbanksysteme Skript zur Vorlesung tenbanks Wintersemester 2009/2010 itel 5: Meh Vorlesung: PD Dr. Peer Kröger,

Mehr

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language: SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In

Mehr

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme Handout zur Unit Web-Technologien SQL 1 Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme Raum: 17-0.10 Tel.: 0451 300 5549 Email: nane.kratzke@fh-luebeck.de (Praktische

Mehr

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL XAMPP-Systeme Teil 3: My SQL Daten Eine Wesenseigenschaft von Menschen ist es, Informationen, in welcher Form sie auch immer auftreten, zu ordnen, zu klassifizieren und in strukturierter Form abzulegen.

Mehr

Konstante Relationen

Konstante Relationen Konstante Relationen values-syntax erzeugt konstante Relation values ( [, Konstante] * )[, ( [, Konstante] * )]* Beispiel values (1, eins ), (2, zwei ), (3, drei ); Resultat ist eine

Mehr

JOIN-Strategien eines Optimizers (1)

JOIN-Strategien eines Optimizers (1) JOIN-Strategien eines Optimizers (1) Die drei unten aufgeführten Join-Strategien *) sollen exemplarisch anhand der folgenden SQL-Abfrage erklärt werden: select * from B, C where c.x=b.w and c.z=17; Verschachtelter

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-

Mehr

5.3 Datenänderung/-zugriff mit SQL (DML)

5.3 Datenänderung/-zugriff mit SQL (DML) 5.3 Datenänderung/-zugriff mit SQL (DML) Hinweis: - DML-Anweisungen sind mengenorientiert - Mit einer Anweisungen kann mehr als ein Tupel eingefügt, geändert, gelöscht oder gelesen werden Benutzungs- und

Mehr

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Programmierung 2

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Programmierung 2 SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R IV-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit

Mehr

Grundlagen von Datenbanken

Grundlagen von Datenbanken Grundlagen von Datenbanken Aufgabenzettel 1 Grundlagen Datenbanken: Kurzer historischer Überblick (1) Anwendung 1 Anwendung 2 Datei 1 Datei 2 Datei 3 Zugriff auf Dateien ohne spezielle Verwaltung 2 Exkurs:

Mehr

Fachbereich Informatik Praktikum 1

Fachbereich Informatik Praktikum 1 Hochschule Darmstadt DATA WAREHOUSE SS2015 Fachbereich Informatik Praktikum 1 Prof. Dr. S. Karczewski Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 14.April.2015 1. Kurzbeschreibung In diesem Praktikum geht

Mehr

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Aufgabe 1: Projektion Datenbanksysteme I π A1,...,A n (π B1,...,B

Mehr

5. Datendefinition in SQL

5. Datendefinition in SQL Datendefinition 5. Datendefinition in SQL Schema, Datentypen, Domains Erzeugen von Tabellen (CREATE TABLE) Schemaevolution: Ändern/Löschen von Tabellen Sichtkonzept (Views) CREATE VIEW / DROP VIEW Problemfälle

Mehr

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #6. SQL (Teil 4)

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #6. SQL (Teil 4) Vorlesung #6 SQL (Teil 4) Fahrplan Besprechung der Übungsaufgaben Einschub: Self Joins (relevant fürs Praktikum) Dynamische Intergritätsbedingungen, das Trigger - Konzept von Oracle Prozedurale Erweiterungen,

Mehr

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language) Einführung in SQL 1. Grundlagen Structured Query Language Viele Dialekte Unterteilung: i. DDL (Data Definition Language) ii. iii. DML (Data Modifing Language) DRL (Data Retrival Language) 1/12 2. DDL Data

Mehr

Datenbanken: Datenintegrität. www.informatikzentrale.de

Datenbanken: Datenintegrität. www.informatikzentrale.de Datenbanken: Datenintegrität Definition "Datenkonsistenz" "in der Datenbankorganisation (...) die Korrektheit der gespeicherten Daten im Sinn einer widerspruchsfreien und vollständigen Abbildung der relevanten

Mehr

Datenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL.

Datenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL. Datenintegrität Arten von Integritätsbedingungen Statische Integritätsbedingungen Referentielle Integrität Integritätsbedingungen in SQL Trigger 1 Datenintegrität Einschränkung der möglichen Datenbankzustände

Mehr

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt. Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Datenbanken und Informationssysteme II Szenario: Projektverwaltung. Es gibt Projekte, Projektleiter, Mitarbeiter und ihre Zuordnung zu Projekten.

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

Inhaltsverzeichnis. jetzt lerne ich

Inhaltsverzeichnis. jetzt lerne ich Inhaltsverzeichnis jetzt lerne ich Einführung 15 1 Erste Schritte 21 1.1 Datenbanken und Datenbank-Managementsysteme 21 1.2 Zugriff auf Datenbanken 22 1.3 Was der Großvater noch wusste... 22 1.4 Einordnung

Mehr

Teil 12: Sichten (Views, Virtuelle Tabellen)

Teil 12: Sichten (Views, Virtuelle Tabellen) 12. Sichten (Views) 12-1 Teil 12: Sichten (Views, Virtuelle Tabellen) Literatur: Elmasri/Navathe:Fundamentals of Database Systems, 3rd Edition, 1999. Section. 8.5, Views (Virtual Tables) in SQL Silberschatz/Korth/Sudarshan:

Mehr

Übersicht über Datenbanken

Übersicht über Datenbanken Übersicht über Datenbanken Vergleich zwischen normaler Datenorganisation und Datenbanken Definition einer Datenbank Beispiel (inkl. Zugriff) Der Datenbankadministrator Relationale Datenbanken Transaktionen

Mehr

4.1 SQL. Wichtige skalare Datentypen

4.1 SQL. Wichtige skalare Datentypen 4. Basierend auf dem Tupelkalkül und der relationalen Algebra wurden mit dem Aufkommen relationaler DBMS auch spezielle Sprachen entwickelt. SQL ist die derzeit am weitesten verbreitete Anfragesprache

Mehr

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Datenintegrität Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Formulierung von Integritätsbedingungen ist die wichtigste Aufgabe des DB-Administrators!

Mehr

Vorlesung Informationssysteme

Vorlesung Informationssysteme Saarbrücken, 18.06.2015 Information Systems Group Vorlesung Informationssysteme Vertiefung Kapitel 7: Zugriffskontrolle Erik Buchmann (buchmann@cs.uni-saarland.de) Foto: M. Strauch Aus den Videos wissen

Mehr

SQL. Abfragesprache Datenmanipulation - DML

SQL. Abfragesprache Datenmanipulation - DML SQL Abfragesprache Datenmanipulation - DML SQL DML-Operationen DML = Data Manipulation Language Sprache zur Veränderung der Daten Operationen Daten selektieren Daten einfügen Daten ändern Daten löschen

Mehr

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL Relationales Modell: SQLDDL SQL als Definitionssprache SQLDDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben Externe Ebene

Mehr

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen C3: Structured Query Language Lernziele: Nach der Bearbeitung dieser Lektion haben Sie folgende Kenntnisse erworben: Sie können elementaren

Mehr

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Datenintegrität Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Formulierung von Integritätsbedingungen ist die wichtigste Aufgabe des DB-Administrators!

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

Mehr

Datenbanksprache SQL. Datenbanksprache SQL. 5.1 Anfragesprache SQL-DQL. from-klausel SS 2005

Datenbanksprache SQL. Datenbanksprache SQL. 5.1 Anfragesprache SQL-DQL. from-klausel SS 2005 Webbasierte Informationssysteme SS 2005 8. SQL-Vertiefung Prof. Dr. Stefan Böttcher Universität Paderborn Datenbanksprache SQL Structured Query Language (SQL) - am IBM San Jose Research Laboratory entwickelt

Mehr

Themenblock: Data Warehousing (I)

Themenblock: Data Warehousing (I) Themenblock: Data Warehousing (I) Praktikum: Data Warehousing und Data Mining Agenda Einführung Data Warehouses Online Transactional Processing (OLTP) Datenmanipulation mit SQL Anfragen mit SQL Online

Mehr

6 Sicherheitskonzepte in Oracle

6 Sicherheitskonzepte in Oracle 6 Sicherheitskonzepte in Oracle Datenbanksysteme sind für viele Benutzer(-gruppen) mit unterschiedlichen Nutzungswünschen geschaffen, aber nicht alle Daten des Informationssystems sind für alle Benutzer

Mehr

DBSP. Vorlesung. Prof. Dr. rer. nat. Nane Kratzke. Unit. Praktische Informatik und betriebliche Informationssysteme

DBSP. Vorlesung. Prof. Dr. rer. nat. Nane Kratzke. Unit. Praktische Informatik und betriebliche Informationssysteme Handout zur Vorlesung Vorlesung DBSP Unit Datenbanken SQL 1 Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme Raum: 17-0.10 Tel.: 0451 300 5549 Email: kratzke@fh-luebeck.de

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

Datenintegrität. Bisherige Integritätsbedingungen

Datenintegrität. Bisherige Integritätsbedingungen Datenintegrität Integitätsbedingungen chlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Bedingungen an den Zustand der Datenbasis dynamische Bedingungen an Zustandsübergänge

Mehr

SQL: statische Integrität

SQL: statische Integrität SQL: statische Integrität.1 SQL: statische Integrität Im allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen erfüllen. Integritätsbedingungen

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

Agenda. Themenblock: Data Warehousing (I) Referenzarchitektur. Eigenschaften eines Data Warehouse. Einführung Data Warehouse Data Access mit SQL

Agenda. Themenblock: Data Warehousing (I) Referenzarchitektur. Eigenschaften eines Data Warehouse. Einführung Data Warehouse Data Access mit SQL Themenblock: Data Warehousing (I) Praktikum: Data Warehousing und Data Mining 2 Eigenschaften eines Data Warehouse Referenzarchitektur Integrierte Sicht auf beliebige Daten aus verschieden Datenbanken

Mehr

Sructred Query Language

Sructred Query Language Sructred Query Language Michael Dienert 11. November 2010 Inhaltsverzeichnis 1 Ein kurzer Versionsüberblick 1 2 SQL-1 mit einigen Erweiterungen aus SQL-92 2 3 Eine Sprache zur Beschreibung anderer Sprachen

Mehr

1001 Möglichkeiten eine Staging Area zu füllen. Sven Bosinger its-people GmbH

1001 Möglichkeiten eine Staging Area zu füllen. Sven Bosinger its-people GmbH Ausgangslage Szenarien Populate the Stage - 1001 Möglichkeiten eine Staging Area zu füllen Sven Bosinger its-people GmbH 1 Sven Bosinger Solution Architect BI und Portfoliomanagement BI its-people GmbH

Mehr

Grundlagen zur Verwendung von Datenbankmanagementsystemen

Grundlagen zur Verwendung von Datenbankmanagementsystemen Grundlagen zur Verwendung von Datenbankmanagementsystemen Vorlesung im Wintersemester 2007/08 (Abschnitt SQL - Structured Query Language ) Prof. Dr. Andreas Schmietendorf 1 Structured Query Language Kriterien

Mehr

Klausur Datenbanksysteme

Klausur Datenbanksysteme Prüfung Datenbanksysteme, 31.Jan. 2003 S. 1 Klausur Datenbanksysteme Name: Matrikel-Nr.: Studiengang: Aufgabenblatt nicht vor Beginn der Prüfung umdrehen! Prüfer: Prof. Dr. Martin Hulin Dauer: 90 Minuten

Mehr

7. Datenkontrolle. Klassifikation von Integritästbedingungen Integritätsbedingungen in SQL. Zugriffskontrolle/Autorisierung in SQL 7-1

7. Datenkontrolle. Klassifikation von Integritästbedingungen Integritätsbedingungen in SQL. Zugriffskontrolle/Autorisierung in SQL 7-1 7. Datenkontrolle ACID und Datenkontrolle Synchronisation i Anomalien Isolation Level Integritätskontrolle Klassifikation von Integritästbedingungen Integritätsbedingungen in SQL Integritätsregeln / Trigger

Mehr

Access Grundkurs. M. Eng. Robert Maaßen

Access Grundkurs. M. Eng. Robert Maaßen Access Grundkurs M. Eng. Robert Maaßen Wer steht da? M. Eng. Robert Maaßen ich@robertmaassen.de www.robertmaassen.de Studium: Informatik Vertiefungsrichtung Medientechnik, Diplom Ingenieur (FH), HAWK,

Mehr

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R VII-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit

Mehr

Von der passiven zur aktiven Datenbank. Checks und Assertions Referentielle Aktionen Trigger

Von der passiven zur aktiven Datenbank. Checks und Assertions Referentielle Aktionen Trigger Von der passiven zur aktiven Datenbank Checks und Assertions Referentielle Aktionen Trigger Datenbank ist mehr als Datenspeicher Konzept der Integrität: Widerspruchsfreier Datenbestand verschieden weit

Mehr

Garten -Daten Bank. Was ist das? Dr. Karsten Tolle PRG2 SS 2013

Garten -Daten Bank. Was ist das? Dr. Karsten Tolle PRG2 SS 2013 Garten -Daten Bank Was ist das? Dr. Karsten Tolle PRG2 SS 2013 Inhalt heute Kurz: Motivation und Begriffe SQL (am Beispiel MySQL und Workbench) create table(tabelle erzeugen) insert into(einfügen) select

Mehr

Semantische Datenintegrität

Semantische Datenintegrität Herbstsemester 2010 Datenbanken mit Übungen Kapitel 5: Datenintegrität H. Schuldt Semantische Datenintegrität Ziel der semantischen Datenintegrität: Die Datenbank soll zu jedem Zeitpunkt die Zusammenhänge

Mehr

View. Arbeiten mit den Sichten:

View. Arbeiten mit den Sichten: View "individuelle Sicht" (vgl. 3-Schichten-Modell) virtuelle Tabellen: in der DB wird nicht deren Inhalt, sondern nur die Ableitungsregel gespeichert. Arbeiten mit den Sichten: Anfragen: kein Problem.

Mehr

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Datensatzhistorie mit dem SQL Server 2000 und 2005 Datensatzhistorie mit dem SQL Server 2000 und 2005-2 - Inhalt

Mehr

Trigger schreiben. Überblick über Trigger. Datenbank Trigger: Beispiel. Aufbau eines Triggers

Trigger schreiben. Überblick über Trigger. Datenbank Trigger: Beispiel. Aufbau eines Triggers Überblick über Trigger Trigger schreiben Ein Trigger ist ein PL/SQL Block, der implizit aufgerufen wird, wenn ein bestimmtes Ereignis eintritt. Ein Trigger kann ein Datenbanktrigger oder ein Anwendungstrigger

Mehr

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 Kapitel 33 Der xml-datentyp In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 995 996 Kapitel 33: Der xml-datentyp Eine der wichtigsten

Mehr

Vorlesung Datenbankmanagementsysteme. Vorlesung Datenbankmanagementsysteme Überblick M. Lange, S. Weise Folie #0-1

Vorlesung Datenbankmanagementsysteme. Vorlesung Datenbankmanagementsysteme Überblick M. Lange, S. Weise Folie #0-1 Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Überblick M. Lange, S. Weise Folie #0-1 Vorlesung Datenbankmanagementsysteme Überblick M. Lange, S. Weise Folie #0-2 Bioinformatik:

Mehr

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198 Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT INTO) 95 5 Daten abfragen (SELECT) 99 6 Daten aus mehreren Tabellen abfragen (JOIN) 143 7 Unterabfragen

Mehr

SQL-Anweisungen. SELECT (SQL Data Query Language)

SQL-Anweisungen. SELECT (SQL Data Query Language) SQL-Anweisungen SELECT (SQL Data Query Language) SELECT * SELECT * FROM "meine Tabelle"; SELECT feldname1, feldname2 SELECT feldname1, feldname2 FROM meinetabelle ORDER BY feldname2, feldname1 DESC; WHERE

Mehr

Die Datenmanipulationssprache SQL

Die Datenmanipulationssprache SQL Die Datenmanipulationssprache SQL Daten eingeben Daten ändern Datenbank-Inhalte aus Dateien laden Seite 1 Data Manipulation Language A DML statement is executed when you Add new rows to a table Modify

Mehr

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #5. SQL (Teil 3)

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #5. SQL (Teil 3) Vorlesung #5 SQL (Teil 3) Fahrplan Besprechung der Übungsaufgaben Rekursion Rekursion in SQL-92 Rekursion in DBMS- Dialekten (Oracle und DB2) Views (Sichten) - gespeicherte Abfragen Gewährleistung der

Mehr

Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur

Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur Moderne Datenbanksysteme sind nach der 3-Ebenen-Architektur gebaut: Anwendung 1 Web-Anwendung Anwendung 2 Java-Programm... Anwendung n Applikation

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Relationale Datenbanken Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-1 Relationale Datenbanken Wiederholung - Datenbankmodelle,

Mehr

Advanced SQL verstehen und einsetzen 10.06.2009. SQL-Implementierungen kennen und bewerten

Advanced SQL verstehen und einsetzen 10.06.2009. SQL-Implementierungen kennen und bewerten 1/47 PHP-User-Group Stuttgart 10.06.2009 Aktuelle Datenbank-Features verstehen und nutzen SQL-Power aktivieren anstatt Arrays sortieren Valide Daten garantieren und performante DB-Zugriffe sicherstellen

Mehr

Transaktionsverwaltung

Transaktionsverwaltung Transaktionsverwaltung VU Datenbanksysteme vom 21.10. 2015 Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Transaktionsverwaltung

Mehr

Datenbanksysteme Kapitel: SQL Data Definition Language

Datenbanksysteme Kapitel: SQL Data Definition Language Datenbanksysteme Kapitel: SQL Data Definition Language Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter Chamoni - Prof.

Mehr

Herbstsemester 2009. Datenbanken mit Übungen Kapitel 4: SQL. H. Schuldt. Inhalt

Herbstsemester 2009. Datenbanken mit Übungen Kapitel 4: SQL. H. Schuldt. Inhalt Herbstsemester 2009 Datenbanken mit Übungen Kapitel 4: SQL H. Schuldt Inhalt Datenmanipulationssprache SQL: SQL (Structured Query Language) ist die Standardsprache für die Datendefinition und Datenmanipulation

Mehr

cs241: Datenbanken mit Übungen HS 2011

cs241: Datenbanken mit Übungen HS 2011 UNIVERSITÄT BASEL Prof. Dr. Heiko Schuldt MSc. Nenad Stojnić BSc. Ivan Giangreco BSc. Florian Lindörfer cs241: Datenbanken mit Übungen HS 2011 Übung 5 Abgabe bis: 4.11.2011 Hinweise: Modalitäten der Abgabe:

Mehr

SQL C.J. Dates Empfehlungen

SQL C.J. Dates Empfehlungen In seinem Buch SQL and Relational Theory: How to Write Accurate SQL Code, erschienen 2009 bei O Reilly, setzt sich C.J. Date mit SQL auseinander. Kurz gesagt: es ist beklagenswert, wie weit entfernt SQL

Mehr

OLAP und Data Warehouses

OLAP und Data Warehouses OLP und Data Warehouses Überblick Monitoring & dministration Externe Quellen Operative Datenbanken Extraktion Transformation Laden Metadaten- Repository Data Warehouse OLP-Server nalyse Query/Reporting

Mehr

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de 08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren

Mehr