Datenbanken in der Praxis 6. Integrität, DBS-Architektur, Sichten
|
|
- Jesko Heinrich
- vor 8 Jahren
- Abrufe
Transkript
1 Datenbanken in der Praxis 6. Integrität, DBS-Architektur, Sichten
2 Inhalt Konsistenz von Daten Datenintegrität Referentielle Integrität Architektur von Datenbanksystemen Drei-Ebenen-Architektur Individuelle Datensichten Definition von Views Update von Views 192
3 Konsistenz von Daten Aufgabe eines DBMS ist neben Bereitstellung von Anfrage- und Ablagefunktionalität für große Datenmengen auch die Sicherung der Konsistenz der Daten. Potentielle Beeinträchtigung der Konsistenz Systemfehler Mehrbenutzerzugriff Unerlaubte Manipulation von Daten Inkonsistente Bearbeitung von Daten Mögliche Resultate Datenverlust Verletzung der Datenintegrität 193
4 Datenintegrität Wir kennen bereits verschiedene Anforderungen an die Datenintegrität und haben die Gewährleistung dieser Integritätsbedingungen implizit (durch Verwendung spezifischer Modellierungskonstrukte) oder explizit (über die Möglichkeiten des DBMS) sichergestellt: Integrität von Schlüsselattributen Die Definition von Schlüsselattributen bedingt, dass keine zwei Tupel mit gleichem Wert in allen Schlüsselattributen existieren dürfen. Realisierung via DBMS bei Schemadefinition durch explizite Attributspezifikation als primary key Integrität von 1:N-Beziehungen Durch Integration des Schlüssels der Relation der 1-Seite der Beziehung als Fremdschlüssel in die Relation der N-Seite der Beziehung ist die Semantik einer 1:N-Beziehung - dass die Entities der N- Seite nur zu genau einem Entity der 1-Seite, aber ein Entity der 1-Seite mit beliebig vielen Entities der N-Seite in Beziehung stehen können - sichergestellt. 194
5 Datenintegrität Wir kennen schon verschiedene Anforderungen an die Datenintegrität und haben die Gewährleistung dieser Integritätsbedingungen implizit (durch Verwendung spezifischer Modellierungskonstrukte) oder explizit (über die Möglichkeiten des DBMS) sichergestellt: Integrität von 1:1-Beziehungen Analog einer 1:N-Beziehung kann durch Integration eines Fremdschlüssels in eine Relation ausgedrückt werden, dass ein Entity nur mit einem anderen Entity in Beziehung stehen kann. Allerdings fehlt jetzt noch der weitere Aspekt einer 1:1-Beziehung - die Exklusivität einer derartigen Beziehung (denn einem anderen Tupel könnte durchaus noch einmal derselbe Fremdschlüssel zugewiesen werden). Deshalb muss ein Fremdschlüsselattribut bei der Schemadefinition noch explizit als unique (und ggf. als not null) gekennzeichnet werden, damit die Semantik einer 1:1-Beziehung in der Datenbank korrekt modelliert ist und die Datenintegrität gewährleistet werden kann. 195
6 Datenintegrität Beispiel Name Bei der zweiten Übungsaufgabe fungierte jeweils ein PersNr anderer Mitarbeiter als Leiter eines Projekts. n MITARBEITER Aus diesem Grund muss beim Ausdruck der Beziehung leitet der Fremdschlüssel PersNr als unique 1 n Tätigkeit gekennzeichnet werden. Dabei spielt es keine Rolle, ob eine separate Beziehungsrelation erstellt oder der Fremdschlüssel leitet arbeitet an kap in die Tabelle PROJEKT übernommen wird. Name create table PROJEKT ( 1 m PROJEKT ProjNr ProjNr integer primary key, PersNr integer unique ) Priorität Ende Beginn 196
7 Datenintegrität Wir kennen schon verschiedene Anforderungen an die Datenintegrität und haben die Gewährleistung dieser Integritätsbedingungen implizit (durch Verwendung spezifischer Modellierungskonstrukte) oder explizit (über die Möglichkeiten des DBMS) sichergestellt: Datenintegrität durch Domänenspezifikation Selbst die Tatsache, dass Attributen bei ihrer Definition ein Wertebereich zugeordnet werden muss, ist ein Aspekt von Datenintegrität. So kann z.b. ausgedrückt werden, dass eine Matrikelnummer ganzzahlig sein muss. Allerdings sind diese datentypbasierten Domänenspezifikationen nicht allzu aussagekräftig, da der Wertebereich einzelner Attribute in der Praxis meist wesentlich kleiner ist als der Wertebereich vordefinierter Datentypen (z.b. Geburtsdatum eines lebenden Menschen vs. irgendein Datum) Aus diesem Grund können derartige Bereichseinschränkungen als statische Integritätsbedingungen explizit in SQL mit Hilfe der check-anweisung formuliert und einer Attributdefinition hinzugefügt werden. 197
8 Statischer Integritätscheck Beispiel Personal über ein Unternehmen ist bekannt: es gibt drei Abteilungen Mitarbeiter verdienen mindestens 1000 im Monat, aber höchstens create table Personal ( Personal Name Beruf Abteilung Gehalt Heinz Graser Elektroingenieur Silke Danilow Bürokauffrau Anita Eckart Controller Olaf Ruß-Möller Produktmanager Tatjana Koslowski Dolmetscher Sven Riedel Informatiker Gudrun Lange Buchhalter Wolf von Bülow Unternehmensberate r Name Beruf varchar(30) not null, varchar(30), Abteilung integer check (Abteilung >= 1 and Abteilung <= 3), Gehalt integer check (Gehalt >= 1000 and Gehalt <= 10000) ); 198
9 Statischer Integritätscheck Beispiel Prüfung über eine Universität ist bekannt: Vorlesungsnummern sind dreistellig Matrikelnummern sind minimal fünf- und maximal sechsstellig Prüfung VorlNr MatrNr Note Noten liegen im Bereich 1.0 bis 5.0 create table Prüfung ( ); VorlNr integer check ( Nummer >= 100 and Nummer <= 999 ), MatrNr integer check ( Nummer >= and Nummer <= ), Note numeric(2,1) check ( Note >= 1.0 and Note <= 5.0 ), primary key (VorlNr, MatrNr) Primärschlüssel, die aus mehreren Attributen bestehen, können erst nach der Definition aller vorkommenden Attribute spezifiziert werden. 199
10 Referentielle Integrität Konsistenz zwischen Relationen
11 Referentielle Integrität (1) Motivation Wir können mittlerweile Beziehungen in SQL derart formulieren, dass die Semantik der verschiedenen Kardinalitäten ausgedrückt werden kann. Allerdings sind wir bisher nicht in der Lage, sicherzustellen, dass referenzierte Tupel einer Beziehung auch tatsächlich existieren: Beispiel insert into Lehrveranstaltung values (500, Mathematik, 7111) Problem Es gibt in der Tabelle Lehrkraft im Schlüssel PersNr (auf den der Fremdschlüssel PersNr der Tabelle Lehrveranstaltung verweist) keinen Datensatz mit dem Attributwert Lehrveranstaltung Nummer Titel PersNr 123 Datenstrukturen Datenbanken in der Praxis Datenbanken Grundlagen Übung Datenstrukturen Mathematik 7111 Lehrkraft PersNr Name 6123 Prof. Benn 6897 Dr. Seifert Prof. Zanger? 201
12 Referentielle Integrität (2) Gegeben zwei Relationen R und S. die Attribut(menge) K sei Schlüssel von R und die Attribut(menge) FK sei Fremdschlüssel von R in S Forderung Zur Gewährleistung referentieller Integrität muss für R und S immer folgende Bedingung erfüllt sein: π[fk](s) π[k](r). Bedeutung Wenn zwei Relationen R und S über eine Schlüssel- / Fremdschlüsselbeziehung in Beziehung stehen, dann muss jeder Attributwert des Fremdschlüssels auch als Attributwert des Schlüssels existieren. 202
13 Referentielle Integrität (3) Beispiel R: Lehrkraft S: Lehrveranstaltung K: Lehrkraft.PersNr FK: Lehrveranstaltung.PersNr Lehrveranstaltung Nummer Titel PersNr 123 Datenstrukturen Datenbanken in der Praxis Datenbanken Grundlagen Übung Datenstrukturen 6897 Vergleich der Schlüsselattributprojektionen π[fk](s) π[k](r) {6897, 6123} {6123, 6897, 43424} Bedingung für referentielle Integrität erfüllt Lehrkraft PersNr Name 6123 Prof. Benn 6897 Dr. Seifert Prof. Zanger 203
14 Referentielle Integrität (4) Beispiel insert into Lehrveranstaltung values (500, Mathematik, 7111) R: Lehrkraft S: Lehrveranstaltung K: Lehrkraft.PersNr Lehrveranstaltung Nummer Titel PersNr 123 Datenstrukturen Datenbanken in der Praxis Datenbanken Grundlagen Übung Datenstrukturen Mathematik 7111 FK: Lehrveranstaltung.PersNr Vergleich der Schlüsselattributprojektionen π[fk](s) π[k](r) {6897, 6123, 7111} {6123, 6897, 43424} Bedingung für referentielle Integrität nicht erfüllt Lehrkraft PersNr Name 6123 Prof. Benn 6897 Dr. Seifert Prof. Zanger 204
15 Referentielle Integrität (5) Damit referentielle Integrität gewährleistet werden kann, sind Änderungen an den Relationen R und S nur unter folgenden Bedingungen erlaubt: Einfügen eines Tupels s in S Für den Attributwert fk der Attributmenge FK von s muss gelten: fk π[k](r) Verändern des Wertes der Attributmenge FK eines Tupels s der Relation S Für den geänderten Attributwert fk der Attributmenge FK von s muss gelten: fk π[k](r) Ändern des Wertes der Attributmenge K eines Tupels r der Relation R Für den ursprünglichen Attributwert k der Attributmenge K muss gelten: σ[fk=k](s) = Löschen eines Tupels r in R Für den ursprünglichen Attributwert k der Attributmenge K von r muss gelten: σ[fk=k](s) = 205
16 Referentielle Integrität in SQL Definition Um referentielle Integrität in SQL gewährleisten zu können, muss bei der Schemadefinition die Schlüssel - Fremdschlüsselbeziehung zwischen zwei (oder mehreren) Tabellen definiert werden. Hierzu wird die Attributdefinition um eine references-klausel erweitert, die auf die Tabelle verweist, in der das Attribut Primärschlüssel ist. Falls ein Fremdschlüssel mehrere Attribute umfasst, muss er nach Definition aller Attribute explizit mittels foreign key als Fremdschlüssel gekennzeichnet werden und mittels der references- Klausel der Verweis auf die Tabelle hergestellt werden, in der die Attributkombination Primärschlüssel ist. Die durch foreign key bzw. die references-klausel gekennzeichneten Fremdschlüssel können auch Nullwerte annehmen, falls sie nicht explizit als not null markiert wurden. Verhalten Damit ein Tupel geändert oder eingefügt werden kann, müssen die darin enthaltenen Fremdschlüsselreferenzen existieren. Ebenso lassen sich jetzt keine Tupel mehr löschen, die noch an anderer Stelle referenziert werden. 206
17 Beispiel create table Prüfung ( VorlNr integer check ( Nummer >= 100 and Nummer <= 999 ), MatrNr integer check ( Nummer >= and Nummer <= ), Note numeric(2,1) check ( Note >= 1.0 and Note <= 5.0 ), primary key (VorlNr, MatrNr), foreign key (VorlNr) references Lehrveranstaltung, foreign key (MatrNr) references Student ); Hinweis Prüfung VorlNr MatrNr Note Durch die Referenzierung der Tabellen Lehrveranstaltung und Student wird automatisch die Korrespondenz zwischen dem Fremdschlüssel VorlNr und dem Primärschlüssel der Tabelle Lehrveranstaltung sowie dem Fremdschlüssel MatrNr und dem Primärschlüssel von Student hergestellt. Dazu müssen natürlich die Primärschlüssel in diesen Tabellen festgelegt worden sein. 207
18 Propagieren von Änderungen Neben der standardmäßigen Gewährleistung der referentiellen Integrität durch Ablehnen verletzender Änderungen an Schlüsselattributen kann optional auch eine automatische Kaskadierung von Änderungsoperationen als Maßnahme zur Integritätssicherung eingestellt werden: Wird ein Primärschlüsselwert geändert, werden alle korrespondierenden Fremdschlüsselwerte auf die gleiche Weise geändert. Hierzu wird in SQL on update cascade zur references- Klausel hinzugefügt. Wird das zu einem Primärschlüsselwert korrespondierende Tupel einer Tabelle gelöscht, werden alle Tupel, die in einer Fremdschlüsselbeziehung zu dieser Tabelle stehen, ebenfalls gelöscht. Hierzu muss die references-klausel von SQL um on delete cascade ergänzt werden. Achtung Das kaskadierende Löschen ist gefährlich. Zwar bleibt die referentielle Integrität erhalten, aber es könnten bei ungeschickter Modellierung durchaus Datensätze unbeabsichtigt aus der Datenbank entfernt werden. 208
19 Beispiel - Änderungspropagation Ausgangspunkt Lehrkraft PersNr Name zwei Tabellen mit on update cascade - Referenzierungssemantik 6123 Prof. Benn 6897 Dr. Seifert create table Lehrkraft Prof. Zanger ( PersNr integer primary key, Name varchar(30) Lehrveranstaltung ) Nummer Titel PersNr 123 Datenstrukturen 6897 create table Lehrveranstaltung 234 Datenbanken in der Praxis 6897 ( 345 Datenbanken Grundlagen 6123 Nummer integer primary key, 456 Übung Datenstrukturen 6897 Titel varchar(30), PersNr integer references Lehrkraft on update cascade ); 209
20 Beispiel - Änderungspropagation Ausgangspunkt create table Lehrkraft ( PersNr integer primary key, Name varchar(30) ) create table Lehrveranstaltung ( Nummer integer primary key, Titel varchar(30), PersNr integer references Lehrkraft on update cascade ); Update-Operation Lehrkraft PersNr Name update Lehrkraft 6123 Prof. Benn set PersNr = Dr. Seifert where PersNr = 6897; Resultat Prof. Zanger Die Änderung eines Primärschlüsselwerts bewirkt jetzt automatisch die gleichartige Änderung aller korrespondierenden Fremdschlüsselwerte: Lehrveranstaltung Nummer Titel PersNr 123 Datenstrukturen Datenbanken in der Praxis Datenbanken Grundlagen Übung Datenstrukturen
21 Beispiel - Löschpropagation Ausgangspunkt create table Lehrkraft ( ) PersNr integer primary key, Name varchar(30) create table Lehrveranstaltung ( ); Nummer integer primary key, Titel varchar(30), PersNr integer references Lehrkraft on delete cascade Änderungsoperation delete from Lehrkraft where PersNr = 6897 Resultat Lehrveranstaltung PersNr Lehrkraft Name 6123 Prof. Benn 6897 Dr. Seifert Prof. Zanger Das Löschen des Tupels mit dem Primärschlüsselwert 6897 aus der Tabelle Lehrkraft bewirkt automatisch auch das Entfernen aller Tupel mit dem Fremdschlüsselwert 6897 aus der Tabelle Lehrveranstaltung. Obwohl dadurch die referentielle Integrität gewahrt bleibt, erscheint es fraglich, ob diese Funktionalität tatsächlich gewünscht ist. Nummer Titel PersNr 123 Datenstrukturen Datenbanken in der Praxis Datenbanken Grundlagen Übung Datenstrukturen
22 Nullsetzen von Fremdschlüsseln Neben der standardmäßigen Gewährleistung der referentiellen Integrität durch Ablehnen verletzender Änderungen an Schlüsselattributen, kann optional auch eine automatische Nullsetzung von Fremdschlüsselattributen als Maßnahme zur Integritätssicherung eingestellt werden: Wird ein Primärschlüsselwert geändert, werden alle korrespondierenden Fremdschlüsselwerte auf den Nullwert null gesetzt. Hierzu wird in SQL die references-klausel um on update set null ergänzt. Wird das zu einem Primärschlüsselwert korrespondierende Tupel einer Tabelle gelöscht, werden die Fremdschlüsselwerte aller Tupel, die in einer Fremdschlüsselbeziehung zu dieser Tabelle stehen auf denn Nullwert null gesetzt. Die Realisierung erfolgt in SQL durch Hinzufügen von on delete set null zur references-klausel. 212
23 Beispiel - Nullsetzen Ausgangspunkt Resultat Lehrkraft create table Lehrkraft ( PersNr integer primary key, Name varchar(30) ) create table Lehrveranstaltung ( Nummer integer primary key, Titel varchar(30), PersNr integer references Lehrkraft on delete set null ); Änderungsoperation delete from Lehrkraft where PersNr = 6897 PersNr Name Das Löschen des Tupels mit dem 6123 Prof. Benn Primärschlüsselwert 6897 der 6897 Dr. Seifert Tabelle Lehrkraft bewirkt automa- tisch das Nullsetzen aller in Bezie Prof. Zanger hung stehender Tupel mit dem Fremdschlüsselwert 6897 aus Tabelle Lehrveranstaltung. Dieses Verhalten bewahrt ebenfalls die referentielle Integrität und erscheint adäquater, da das Löschen einer Lehrkraft nicht immer das Löschen aller assoziierten Lehrveranstaltungen nach sich zieht. Lehrveranstaltung Nummer Titel PersNr 123 Datenstrukturen 6897 null 234 Datenbanken in der Praxis 6897 null 345 Datenbanken Grundlagen Übung Datenstrukturen 6897 null 213
24 Architektur von Datenbanksystemen
25 Sichten auf ein DBS Wir haben uns bisher mit der semantischen Modellierung eines Realweltausschnitts beschäftigt und diesen in ein konkretes Datenmodell übertragen. Wir haben uns jedoch noch nicht mit der konkreten Verwendung dieser Daten in verschiedenen Anwendungsgebieten beschäftigt und auch nicht mit Fragen der technischen Realisierung. Demzufolge unterscheiden wir drei Sichten auf ein Datenbanksystem: Konzeptuelle Sicht (DB-Designer, DB-Programmierer) Dies ist der Aspekt der Datenmodellierung, den wir bisher betrachtet haben. Wir haben die logischen Strukturen von Objekten und deren Beziehungen identifiziert und in einem konkreten Datenmodell hinterlegt. Externe Sicht (DB-Anwender) Die Aufgabe eines DBS ist es, die Datenverwaltung verschiedener externer Anwendungen zu übernehmen. Aus diesem Grund hat jede externe Anwendung einer Datenbank eigene Anforderungen an die zu verarbeitenden Daten und des Zugriffsschutzes und demzufolge eine eigene Sicht auf die modellierten Strukturen und Beziehungen einer Datenbank. Interne Sicht (DB-Administrator) Optimierte Anordnung von Daten auf Speichermedien und Zugriffsoptimierung. 215
26 Konzeptuelles Schema Die drei Sichten werden durch jeweils ein Schema formal beschrieben: Konzeptuelles Schema enthält alle Eigenschaften von Objekten und deren Beziehungen, die für die Datenverwaltung eine Rolle spielen. erfasst und definiert Aspekte einer korrekten Datenverarbeitung, z.b. Integritätsbedingungen ist ein stabiler Bezugspunkt für alle darauf basierenden Anwendungen (der externen Sicht). Es ändert sich eher selten, z.b. wenn sich die Unternehmensstruktur ändert. stellt auch eine einheitliche Dokumentation wesentlicher Aspekte des Problembereiches eines Unternehmens dar kontrolliert die Verwendung von Daten an zentraler Stelle 216
27 Externes und internes Schema Die drei Sichten werden durch jeweils eigene Schemata formal beschrieben: Externes Schema beschreibt die Aspekte konzeptueller Objekte und deren Beziehungen, die für die Datenverwaltung einer Anwendung eine Rolle spielen erfasst und definiert Aspekte einer korrekten Datenverarbeitung einer externen Anwendung definiert Transformationsregeln und beschreibt die Herleitung externer Objekte aus den Objekten des konzeptuellen Schemas Internes Schema beschreibt wie und wo einzelne Attribute gespeichert sind, z.b. physische Trennung wenig benötigter von häufig benutzten Attributen Anlegen zusätzlicher Zugriffsstrukturen (Indexe) für Attribute siehe Physische Datenorganisation 217
28 Drei-Ebenen-Architektur externe Ebene (externes Schema) Studenten- sekretariat Zentrales Prüfungsamt Personalabteilung Student Student prüfen Hiwi Mitarbeiter Raum- planung Raum Transformationsregeln konzeptuelle Ebene (konzeptuelles Schema) Unternehmensmodell TU-Chemnitz Student Lehrveranstaltung Lehrkraft hört Raum prüfen interne Ebene (internes Schema) Hardwarenahe Organisation und Verwaltung der Daten Transformationsregeln PersNr: int (2 Byte) auf Platte 1 Gehalt: float (4 Byte) auf Platte 2 218
29 Individuelle Datensichten
30 Datenindividualisierung In den Anwendungen der externen Ebene müssen die Daten der Datenbank in einer für die jeweilige Benutzergruppe geeigneten Form bereitgestellt werden. Diese individuelle Bereitstellung erfolgt aus zwei Gründen Bereitstellung nur von relevanten Daten für eine Nutzergruppe Verwirklichung von Datenschutzaspekten, d.h. nicht jeder Nutzer darf alle Daten sehen Grundlage der Realisierung beider Aspekte ist die Partitionierung von Tabellen 220
31 Partitionierung Individuelle Datensichten bzw. Zugriffseinschränkungen können vielfältiger Natur sein: Vertikale Partitionierung Zugriff nur auf bestimmte Tupel einer Relation. Horizontale Partitionierung Zugriff nur auf bestimmte Spalten einer Relation. Gruppierende & aggregierende Partitionierung Kein Zugriff auf individuelle Tupel, sondern nur auf gruppierte Werte und die Ergebnisse von Aggregatfunktionen auf Gruppen. Kombinierte Partitionierung Oft werden die verschiedenen Partitionierungen gemeinsam verwendet. 221
32 Realisierung von Sichten Wie wir gesehen haben, realisieren Sichten den Zugriff nur auf bestimmte Teile von Tabellen und können somit mittels select-statement definiert werden. Um einer Anwendung der externen Ebene ausschließlich Zugriff auf partitionierte Tabellen zu ermöglichen, definiert man virtuelle Tabellen als Ergebnis einer Partitionierung mittels eines select-statements. Diese virtuellen Tabellen heißen Views (Sichten) und können direkt in SQL definiert werden: create view Name as ( select-statement ) Indem man externen Applikationen den Zugriff auf Views gewährt, aber nicht auf die Originaltabellen, wird auf diesem Wege sowohl der Datenschutz gewährleistet als auch die Bereitstellung nur bestimmter Informationsaspekte realisiert. Views können - zumindest bei Anfragen - wie normale Tabellen Verwendung finden. 222
33 Views - Beispiel (1) Wunsch Die Sachbearbeiter der verschiedenen Studiengänge im zentralen Prüfungsamt sollen nur Zugriff auf die Studenten ihres Studienganges haben. Realisierung Wir definieren Sichten für Mathematik- und Philosophiestudenten: create view Mathematikstudent as ( select MatrNr, Name from Student where Studiengang = Mathematik ); Student MatrNr Name Studiengang Archimedes Mathematik Pythagoras Mathematik Sophokles Philosophie Eratosthenes Mathematik Platon Philosophie Philosophiestudent MatrNr Name Sophokles Platon Mathematikstudent MatrNr Name Archimedes Pythagoras Eratosthenes create view Philosophiestudent as ( select MatrNr, Name from Student where Studiengang = Philosophie ); Die Views Philosophiestudent und Mathematikstudent können für Anfragen wie normale Tabellen verwendet werden, z.b. select * from Mathematikstudent 223
34 Views - Beispiel (2) Wunsch Abteilungsleiter benötigen für ihre Budget- planungen auch Informationen über andere Abteilungen. Allerdings dürfen sie aus Datenschutzgründen nicht erfahren, was Mitarbeiter anderer Abteilungen verdienen. Personal Name Beruf Abteilung Gehalt Heinz Graser Elektroingenieur Silke Danilow Bürokauffrau Anita Eckart Controller Olaf Ruß-Möller Produktmanager Tatjana Koslowski Dolmetscher Realisierung Wir definieren eine Sicht, die Informationen über die einzelnen Abteilungen nur in aggregierter Form enthält: Sven Riedel Informatiker Gudrun Lange Buchhalter Wolf von Bülow Unternehmensberate r create view Abteilungsstatistik(Abteilung, Mitarbeiter, Gehälter) as ( select Abteilung, count(*), sum(gehalt) ); from Personal group by Abteilung Bei der Vergabe eines Namens an einen View können gleichzeitig die Attribute des Views (um-)benannt werden. Abteilungsstatistik Abteilung Mitarbeiter Gehälter
35 Views - Beispiel (3) Weitere Verwendung Views können auch zur Vereinfachung von Anfragen eingesetzt werden, in- dem komplexere Anfragen (z.b. Joins) in Views abgelegt und dann einfachere Anfragen an den View gestellt werden: Lehrveranstaltung Nummer Titel PersN 123 Datenstrukturen 6897 r 234 Datenbanken in der Datenbanken Praxis Grundlagen Übung Datenstrukturen 6897 Lehrkraft PersNr Name 6123 Prof. Benn 6897 Dr. Seifert Prof. Zanger create view Lehrbelastung(Name, Anzahl) as ( select Name, count(*) from Lehrveranstaltung natural join Lehrkraft group by Name ); Beispielanfrage Lehrbelastung Name Anzahl Dr. Seifert 3 Prof. Benn 1 select * from Lehrbelastung where Anzahl > 1 statt: select Name, count(*) as Anzahl from Lehrveranstaltung natural join Lehrkraft group by Name having Anzahl > 1 Anfrageergebnis Name Anzahl Dr. Seifert 3 225
36 Spezialisierungen mit Views Views sind eine Möglichkeit, Spezialisierungen in SQL auszudrücken: Weg Die Datensätze werden zentral in einer Tabelle mit allen Informati- onen verwaltet. Anhand bestimmter Attribute werden virtuelle Ta- bellen (Sichten) mit Teilinformationen des Datenbestandes gebildet. Somit ist zumindest anfragetechnisch die Bildung einer kompletten Spezialisierungshierarchie denkbar. Beispiel create view Mathematikstudent as ( select MatrNr, Name from Student where Studiengang = Mathematik ); create view Philosophiestudent as ( select MatrNr, Name from Student where Studiengang = Philosophie ); Student MatrNr Name Studiengan Archimedes g Mathematik Pythagoras Mathematik Sophokles Philosophie Eratosthene Mathematik s Platon Philosophie Mathematikstudent MatrNr Name Archimedes Pythagoras Eratosthenes Philosophiestudent MatrNr Name Sophokles Platon 226
37 Generalisierungen mit Views Views sind eine Möglichkeit, Generalisierungen in SQL auszudrücken: Weg Die Datensätze verschiedener Tabellen werden in einem View (unter Wegfall aller Informationen, die nicht in allen Tabellen vorhanden ist) vereinigt, der damit eine generalisierende Sicht darauf bietet. Die Verwaltung der Datensätze erfolgt weiterhin in den Basistabellen. Beispiel create view AlleStudenten as AlleStudenten ( select MatrNr, Name MatrNr Name from Mathematikstudent Archimedes ) Pythagoras union Sophokles ( select MatrNr, Name Eratosthenes from Philosophiestudent Platon ); Mathematikstudent MatrNr Name Semeste Archimedes r Pythagoras Eratosthene s Philosophiestudent MatrNr Name Sophokles Platon 2 227
38 Update von Views Wir haben gesehen dass Views u.a. auch Spezialisierungs- und Generalisierungshierarchien in SQL ausdrücken können. Allerdings haben wir hierbei bisher nur Anfragefunktionalität untersucht. Frage Sind Views auch veränderbar? Können insert-, update- oder delete-operationen ausgeführt werden? Anwort Merke Der Update eines Views ist möglich, wenn der View weder Aggregatfunktionen bzw. Anweisungen wie having, distinct oder group by enthält in der select-projektionsliste nur eindeutige Spaltennamen und einen Schlüssel der Basistabelle enthält nur genau eine Tabelle beinhaltet, die natürlich veränderbar sein muss Selbst wenn ein View theoretisch änderbar sein sollte, bedeutet dies nicht, dass SQL diese Änderung auch gestattet. 228
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!
MehrDatenintegritä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!
MehrDatenintegritä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
MehrReferentielle 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
MehrSemantische 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
MehrReferentielle 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
MehrMengenvergleiche: 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
MehrDatenintegritä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
MehrDATENBANKEN 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.
MehrSQL: 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
MehrInformatik für Ökonomen II: Datenintegrität. Prof. Dr. Carl-Christian Kanne
Informatik für Ökonomen II: Datenintegrität Prof. Dr. Carl-Christian Kanne 1 Konsistenzbedingungen DBMS soll logische Datenintegrität gewährleisten Beispiele für Integritätsbedingungen Schlüssel Beziehungskardinalitäten
Mehr7. Übung - Datenbanken
7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen
Mehrmit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007
6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle
MehrFachbericht zum Thema: Anforderungen an ein Datenbanksystem
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank
MehrSichten 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
MehrIntegritätsbedingungen / Normalformen- Beispiel: Kontoführung
Technische Universität München WS 2003/04, Fakultät für Informatik Datenbanksysteme I Prof. R. Bayer, Ph.D. Lösungsblatt 8 Dipl.-Inform. Michael Bauer Dr. Gabi Höfling 12.01. 2004 Integritätsbedingungen
MehrDatenbanksysteme 2013
Datenbanksysteme 2013 Kapitel 8: Datenintegrität Vorlesung vom 14.05.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Datenintegrität Statische Bedingung (jeder Zustand) Dynamische
MehrÜbung Datenbanken in der Praxis. Datenmodifikation mit SQL
Datenmodifikation mit SQL Folie 45 SQL - Datenmodifikation Einfügen INSERT INTO Relation [(Attribut, Attribut,...)] VALUES (Wert, Wert,...) INSERT INTO Relation [(Attribut, Attribut,...)] SFW-Anfrage Ändern
MehrSQL 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
Mehr5.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
MehrKapitel 8: Datenintegrität
Kapitel 8: Datenintegrität Datenintegrität Statische Bedingung (jeder Zustand) Dynamische Bedingung (bei Zustandsänderung) Bisher: Definition eines Schlüssels 1:N - Beziehung Angabe einer Domäne Jetzt:
MehrDatenbanken: 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
MehrEin Ausflug zu ACCESS
Ein Ausflug zu ACCESS Die folgenden Folien zeigen beispielhaft, wie man sein DB- Wissen auf ACCESS übertragen kann betrachtet wird ACCESS 2002, da gerade im Bereich der Nutzung von SQL hier einiges nachgearbeitet
MehrRelationales 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
MehrLabor 3 - Datenbank mit MySQL
Labor 3 - Datenbank mit MySQL Hinweis: Dieses Labor entstand z.t. aus Scripten von Prof. Dr. U. Bannier. 1. Starten des MySQL-Systems MySQL ist ein unter www.mysql.com kostenlos erhältliches Datenbankmanagementsystem.
Mehr4. BEZIEHUNGEN ZWISCHEN TABELLEN
4. BEZIEHUNGEN ZWISCHEN TABELLEN Zwischen Tabellen können in MS Access Beziehungen bestehen. Durch das Verwenden von Tabellen, die zueinander in Beziehung stehen, können Sie Folgendes erreichen: Die Größe
Mehr6. 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
MehrObjektrelationale Datenbanken
Vorlesung Datenbanksysteme vom 26.11.2008 Objektrelationale Datenbanken Konzepte objektrelationaler DBs SQL:1999 OO vs. OR Konzepte objektrelationaler Datenbanken Große Objekte (LOBs: Large Objects) Mengenwertige
MehrVO 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
MehrSQL 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-
MehrReferenzielle Integrität SQL
Referenzielle Integrität in SQL aus Referential Integrity Is Important For Databases von Michael Blaha (Modelsoft Consulting Corp) VII-45 Referenzielle Integrität Definition: Referenzielle Integrität bedeutet
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 7 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe (muehe@in.tum.de) http://www-db.in.tum.de/teaching/ws1314/dbsys/exercises/
MehrEinfü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
MehrInformatik 12 Datenbanken SQL-Einführung
Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung
MehrXAMPP-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.
MehrVorlesung Dokumentation und Datenbanken Klausur
Dr. Stefan Brass 5. Februar 2002 Institut für Informatik Universität Giessen Vorlesung Dokumentation und Datenbanken Klausur Name: Geburtsdatum: Geburtsort: (Diese Daten werden zur Ausstellung des Leistungsnachweises
MehrInformations- und Wissensmanagement
Übung zur Vorlesung Informations- und Wissensmanagement (Übung 1) Frank Eichinger IPD, Lehrstuhl für Systeme der Informationsverwaltung Zur Person Beruflicher Hintergrund Studium an der TU Braunschweig
MehrDipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009
Hochschule Darmstadt DATENBANKEN Fachbereich Informatik Praktikum 3 Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 PL/SQL Programmierung Anwendung des Cursor Konzepts und Stored Procedures Und Trigger
Mehr3. Das Relationale Datenmodell
3. Das Relationale Datenmodell Das Relationale Datenmodell geht zurück auf Codd (1970): E. F. Codd: A Relational Model of Data for Large Shared Data Banks. Comm. of the ACM 13(6): 377-387(1970) DBMS wie
MehrDatenintegrität. Kapitel 5 1
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische
MehrDas SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik
Beispielaufgaben Informationssysteme erstellt von Fabian Rump zur IS Vorlesung 2009/10 1 Multiple Choice Aussage richtig falsch Eine SQL-Abfrage beginnt immer mit dem Schlüsselwort SELECT Eine Datenbank
MehrDBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt
DBS ::: SERIE 5 Die Relation produkt enthält Hersteller, Modellnummer und Produktgattung (pc, laptop oder drucker aller Produkte. Die Modellnummer ist (der Einfachheit halber eindeutig für alle Hersteller
Mehr4.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
MehrSchlüssel bei temporalen Daten im relationalen Modell
Schlüssel bei temporalen Daten im relationalen Modell Gesine Mühle > Präsentation > Bilder zum Inhalt zurück weiter 322 Schlüssel im relationalen Modell Schlüssel bei temporalen Daten im relationalen Modell
MehrUniversitä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
MehrViews 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
MehrHandbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken
Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen
Mehr6. 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
MehrDatenintegrität. Kapitel 5 1
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrDatenintegrität. Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung Statische vs. dynamische Integritätsbedingungen Statische Integritätsbedingungen Bedingungen
MehrBerechtigungsgruppen und Zeitzonen
Berechtigungsgruppen und Zeitzonen Übersicht Berechtigungsgruppen sind ein Kernelement von Net2. Jede Gruppe definiert die Beziehung zwischen den Türen des Systems und den Zeiten, zu denen Benutzer durch
MehrDatenbanken: Relationales Datenbankmodell RDM
Das RDM wurde in den 70'er Jahren von Codd entwickelt und ist seit Mitte der 80'er Jahre definierter Standard für Datenbanksysteme! Der Name kommt vom mathematischen Konzept einer Relation: (Sind A, B
Mehr1. Funktionen und Datenflüsse; Tabellenkalkulationssysteme
Grundwissen Informatik 1. und Datenflüsse; Tabellenkalkulationssysteme Zellbezug relativer Zellbezug absoluter Zellbezug iterative Berechnungen Datentypyen z. B. A4 A ist der Spaltenbezeichner 4 ist die
MehrDatenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer
Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Wesentliche Inhalte Begriff DBS Datenbankmodelle Datenbankentwurf konzeptionell, logisch und relational
MehrFachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer
Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Klassendiagramme Ein Klassendiagramm dient in der objektorientierten Softwareentwicklung zur Darstellung von Klassen und den Beziehungen,
MehrDatenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin
Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,
Mehr1 Mathematische Grundlagen
Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.
MehrCarl-Christian Kanne. Einführung in Datenbanken p.1/513
Einführung in Datenbanken Carl-Christian Kanne Einführung in Datenbanken p.1/513 Kapitel 1 Einführung Einführung in Datenbanken p.2/513 Einführung Was ist ein Datenbanksystem (DBS)? Ein System zum Speichern
MehrSkriptenverkauf Datenmodell. Lars Trebing, 4. Juli 2008
Skriptenverkauf Datenmodell Lars Trebing, 4. Juli 2008 Überblick Verkaufsvorgang Verkaufter Bestand Ärger Nummer Verkaufsvorgang Nummer Lagerplatz Abschlußzeitpunkt primär (ja, nein) Text Verkäufer Kunde
MehrUnterabfragen (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
MehrUniversitä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
MehrInhaltsverzeichnis. 1. Fragestellung
Inhaltsverzeichnis 1. Fragestellung... 1 2. Herleitung zum Thema... 1 3. Das Entity Relationship Modell (ERM)... 2 4. Praktisches Beispiel zum ERM... 7 5. Anhang...Fehler! Textmarke nicht definiert. 1.
MehrUni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr
Raum: LF 230 Bearbeitung: 9.-11. Mai 2005 Datum Gruppe Vorbereitung Präsenz Aktuelle Informationen unter: http://www.is.informatik.uni-duisburg.de/courses/dbp_ss03/ Tabellen in IBM DB2 Tabellen Eine relationale
MehrHow to do? Projekte - Zeiterfassung
How to do? Projekte - Zeiterfassung Stand: Version 4.0.1, 18.03.2009 1. EINLEITUNG...3 2. PROJEKTE UND STAMMDATEN...4 2.1 Projekte... 4 2.2 Projektmitarbeiter... 5 2.3 Tätigkeiten... 6 2.4 Unterprojekte...
MehrRelationale Datenbanken Datenbankgrundlagen
Datenbanksystem Ein Datenbanksystem (DBS) 1 ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern
MehrKostenstellen verwalten. Tipps & Tricks
Tipps & Tricks INHALT SEITE 1.1 Kostenstellen erstellen 3 13 1.3 Zugriffsberechtigungen überprüfen 30 2 1.1 Kostenstellen erstellen Mein Profil 3 1.1 Kostenstellen erstellen Kostenstelle(n) verwalten 4
Mehr1. Arbeiten mit dem Touchscreen
1. Arbeiten mit dem Touchscreen 1.1. Einleitung Als weitere Buchungsart steht bei DirectCASH ein Touchscreen zur Verfügung. Dieser kann zwar normal via Maus bedient werden, vorzugsweise jedoch durch einen
MehrDatumsangaben, enthält mindestens Jahr, Monat, Tag
Datenbanken mit SQL Informatik - Sprenger Häufig wird mit Tabellenkalkulationen gearbeitet, obwohl der Einsatz von Datenbanken sinnvoller ist. Tabellenkalkulationen wie Microsoft Excel oder LibreOffice
MehrDatenbanken 16.1.2008. Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt:
Datenbanksysteme Entwicklung der Datenbanksysteme Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt: 1. Generation: In den fünfziger
MehrER-Modellierung am Beispiel der Universitätsdatenbank aus der DBIS-Vorlesung
ER-Modellierung am Beispiel der Universitätsdatenbank aus der DBIS-Vorlesung Datenbank-Praktikum SS 2010 Prof. Dr. Georg Lausen Florian Schmedding ER-Modell: Wiederholung Entitäten E Beziehungen B Attribute
MehrOrdner Berechtigung vergeben Zugriffsrechte unter Windows einrichten
Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Was sind Berechtigungen? Unter Berechtigungen werden ganz allgemein die Zugriffsrechte auf Dateien und Verzeichnisse (Ordner) verstanden.
MehrBeispiel 1: Filmdatenbank
Beispiel 1: Filmdatenbank Die Filmdatenbank hat drei Tabellen (ACTOR, MOVIE, PLAYED) Aufgabe 1: Erstelle mit Hilfe der SQL-DDL die drei Tabellen und die Datenbank (MOVIEDB) ACTOR (ActorID, Name, Birthday,
MehrSoftware-Engineering Einführung
Software-Engineering Einführung 7. Übung (04.12.2014) Dr. Gergely Varró, gergely.varro@es.tu-darmstadt.de Erhan Leblebici, erhan.leblebici@es.tu-darmstadt.de Tel.+49 6151 16 4388 ES Real-Time Systems Lab
MehrFachhochschule Deggendorf Platzziffer:...
Sommersemester 2008 Zahl der Blätter: 9 Fachbereich: Betriebswirtschaft WI Bachelor Hilfsmittel: alles ohne Computer Zeit: 90 Minuten 1 Betrachten Sie die drei markierten Zeilen. 1. Angenommen Sie hätten
MehrKonstante Relationen
Konstante Relationen values-syntax erzeugt konstante Relation values ( [, Konstante] * )[, ( [, Konstante] * )]* Beispiel values (1, eins ), (2, zwei ), (3, drei ); Resultat ist eine
MehrWhitepaper. Produkt: combit Relationship Manager. Einbindung externer FiBu-/Warenwirtschaftsdaten. combit GmbH Untere Laube 30 78462 Konstanz
combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Einbindung externer FiBu-/Warenwirtschaftsdaten Einbindung externer FiBu-/Warenwirtschaftsdaten - 2 - Inhalt Ausgangssituation
MehrIV. Datenbankmanagement
Wirtschaftsinformatik 2 (PWIN) IV. Datenbankmanagement Kapitel 2: Datenmanipulationssprache SQL Wirtschaftsinformatik 2 (PWIN) SS 2009, Professur für Mobile Business & Multilateral Security 1 Agenda 1.
MehrDatenbanken. Datenintegrität + Datenschutz. Tobias Galliat. Sommersemester 2012
Datenbanken Datenintegrität + Datenschutz Tobias Galliat Sommersemester 2012 Professoren PersNr Name Rang Raum 2125 Sokrates C4 226 Russel C4 232 2127 Kopernikus C3 310 2133 Popper C3 52 2134 Augustinus
MehrArchiv - Berechtigungen
Archiv - Berechtigungen - 1 Inhaltsverzeichnis 1. Grunddefinitionen...3 1.1. Mögliche Definitionen...3 1.1.1. Programme...3 1.1.2. Prinzipale...3 1.1.3 Archivzugriff...3 1.2. Leserichtung...3 1.2.1. Ordnerbezogen...3
MehrSQL 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
MehrUrlaubsregel in David
Urlaubsregel in David Inhaltsverzeichnis KlickDown Beitrag von Tobit...3 Präambel...3 Benachrichtigung externer Absender...3 Erstellen oder Anpassen des Anworttextes...3 Erstellen oder Anpassen der Auto-Reply-Regel...5
MehrUpgrade-Leitfaden. Apparo Fast Edit 1 / 7
Upgrade-Leitfaden Apparo Fast Edit 1 / 7 Inhaltsverzeichnis 1 Download der neuen Version... 4 2 Sicherung des Apparo Datenbank-Repository... 4 3 De-Installation der installierten Apparo Fast Edit Version...
MehrRelationale Datenbanken in der Praxis
Seite 1 Relationale Datenbanken in der Praxis Inhaltsverzeichnis 1 Datenbank-Design...2 1.1 Entwurf...2 1.2 Beschreibung der Realität...2 1.3 Enitiy-Relationship-Modell (ERM)...3 1.4 Schlüssel...4 1.5
MehrSQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99
SQL Früherer Name: SEQUEL SQL: Structured Query Language Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL ist eine deklarative Anfragesprache Teile von SQL Vier große Teile:
MehrUm dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:
Einleitung Unter MacOS X hat Apple die Freigabe standardmäßig auf den "Public" Ordner eines Benutzers beschränkt. Mit SharePoints wird diese Beschränkung beseitigt. SharePoints erlaubt auch die Kontrolle
MehrProfilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken
Profilbezogene informatische Bildung in den Klassenstufen 9 und 10 Schwerpunktthema Robby Buttke Fachberater für Informatik RSA Chemnitz Fachliche Einordnung Phasen relationaler Modellierung Fachlichkeit
MehrPowerPoint 2010 Mit Folienmastern arbeiten
PP.002, Version 1.1 07.04.2015 Kurzanleitung PowerPoint 2010 Mit Folienmastern arbeiten Der Folienmaster ist die Vorlage für sämtliche Folien einer Präsentation. Er bestimmt das Design, die Farben, die
MehrEinrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me
Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Bevor Sie die Platte zum ersten Mal benutzen können, muss sie noch partitioniert und formatiert werden! Vorher zeigt sich die Festplatte
MehrER-Modell. Entity-Relationship-Model
+ ER-Modell Entity-Relationship-Model + Was ist ein Modell? Worte/Zitat aus einem Physikbuch: "Modelle sind also Vorstellungshilfen und Wirklichkeitshilfen, nicht die Wirklichkeit selbst." (Metzler Physik).
MehrDynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München
Kapitel 4 Dynamisches SQL Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München 2008 Thomas Bernecker, Tobias Emrich unter Verwendung der Folien des Datenbankpraktikums aus dem Wintersemester
MehrHilfe zur Dokumentenverwaltung
Hilfe zur Dokumentenverwaltung Die Dokumentenverwaltung von Coffee-CRM ist sehr mächtig und umfangreich, aber keine Angst die Bedienung ist kinderleicht. Im Gegensatz zur Foto Galeria können Dokumente
MehrProbeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5
Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5 Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Hinweise Der Aufgabensatz
MehrExcel Pivot-Tabellen 2010 effektiv
7.2 Berechnete Felder Falls in der Datenquelle die Zahlen nicht in der Form vorliegen wie Sie diese benötigen, können Sie die gewünschten Ergebnisse mit Formeln berechnen. Dazu erzeugen Sie ein berechnetes
MehrSoftware Engineering Klassendiagramme Assoziationen
Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen
MehrSharePoint Demonstration
SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit
MehrAccess 2000 und MS SQL Server im Teamwork
Access 2000 und MS SQL Server im Teamwork von Irene Bauder, Jürgen Bär 1. Auflage Hanser München 2000 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 21473 6 Zu Inhaltsverzeichnis schnell und
Mehr