3.3 Constraints, Views, Triggers. Regelkonzepte in SQL: Übersicht
|
|
- Angelika Linden
- vor 8 Jahren
- Abrufe
Transkript
1 3.3 Constraints, Views, Triggers Datendefinition und Datenmanipulation in SQL 3.3 Constraints, Views and Triggers in SQL 2002 Prof. Dr. Rainer Manthey Informationssysteme 1 Regelkonzepte in SQL: Übersicht SQL-Schemata enthalten nicht nur reine Strukturdefinitionen, sondern können auch mit semantischem Wissen über den jeweiligen Anwendungsbereich "angereichert" werden, so dass eine "vernünftige" Verwendung der DB erfolgen kann. Drei Repräsentationsformen für logische Zusammenhänge zwischen Tabellen: deklarativ dargestellt: konstruktiv (zur Datenherleitung): Sichten (views) normativ/restriktiv: Integritätsbedingungen (constraints) imperativ dargestellt: Festlegungen automatisch ausgelöster Folgeänderungen "Auslöser" (triggers) Alle drei "Wissensformen" werden aus als Regeln bezeichnet. in diesem Abschnitt: kurze Einführung in die wichtigsten Konzepte zu SQL-Regeln Vertiefung möglich in Spezialvorlesungen zu diesen Konzepten: deduktive Datenbanken (views, constraints) aktive Datenbanken (triggers, constraints) 2002 Prof. Dr. Rainer Manthey Informationssysteme 2
2 Constraints - Integritätsbedingungen Constraints in SQL 2002 Prof. Dr. Rainer Manthey Informationssysteme 3 Constraint-Arten in SQL: Wiederholung Im Zusammenhang mit Schemadefinition wurden bereits verschiedene Formen von Integritätsbedingungen (engl.: [integrity] constraints) eingeführt, die sich direkt auf einzelne Tabellen beziehen: Bei CREATE TABLE-Anweisungen: "column constraints": NOT NULL, UNIQUE, CHECK "row constraints": UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK Auch bei der Definition von Wertebereichen mittels CREATE DOMAIN können "domain constraints" ähnlich "column constraints" definiert werden. CHECK-Constraint für ganze Tabelle: beliebige Bedingung als Integritätsbedingung für diese Tabelle (Absicht der SQL-Designer) Überprüfung der Bedingung bei jeder die Tabelle betreffenden Änderung. Normalfall : CHECK-Bedingung referenziert nur Spalten der jeweiligen Tabelle. aber auch zulässig: CHECK-Bedingung enthält geschachteltes SELECT Überprüfung wird ausgedehnt auf andere Tabellen sogar denkbar: CHECK-Bedingung referenziert ihre Tabelle gar nicht! 2002 Prof. Dr. Rainer Manthey Informationssysteme 4
3 Nicht-lokale CHECK-Constraints Beispiel für eine CHECK-Constraint, die eine "fremde" Tabelle referenziert: CREATE TABLE prüfer ( Name CHAR NOT NULL, CHECK ( Name IN ( SELECT Name FROM professoren )) ) Nur Professoren dürfen Prüfer sein! Würde die Integritätsbedingung nur bei Änderungen der 'prüfer'-tabelle erfolgen, "für die" diese Constraint (lokal) definiert ist, dann gäbe es leicht inkonsistente Zustände! Grund: Sowie ein Professor aus der 'professoren'-tabelle entfernt wird, wären alle 'prüfer'-zeilen, die diesen Professor referenzieren "inkonsistent" im Sinne der obigen Beschränkung! Die hier diskutierte CHECK-Constraint ist direkt äquivalent zu einer Fremdschlüsselbeschränkung auf der Spalte Name! 2002 Prof. Dr. Rainer Manthey Informationssysteme 5 Globale Integritätsbedingungen in SQL bisher nicht behandelt, aber im Standard definiert: assertions (dt.: Zusicherungen) Assertions dienen zur Formulierung globaler Integritätsbedingungen, die semantisch nicht an einzelne Tabellen gebunden sind. Syntaxformat: CREATE ASSERTION <constraint-name> CHECK ( <conditional-expression> ) Assertions sind im Prinzip ausreichend um alle denkbaren Integritätsbedingungen auszudrücken, d.h. alle "lokalen" Formen von Constraints sind redundant Constraint zur 'prüfer'-tabelle als Assertion (offensichtlich aufwändiger): CREATE ASSERTION ausreichend_qualifiziert CHECK NOT EXISTS ( SELECT * FROM prüfer P WHERE P.Name NOT IN ( SELECT Name FROM professoren ) ; 2002 Prof. Dr. Rainer Manthey Informationssysteme 6
4 CHECK-Constraints als Assertions Generelles Prinzip der Umformung (lokaler) CHECK-Constraints in (globale) Assertions: CREATE TABLE t (..... CONSTRAINT icname CHECK ( c )... ) Optional für jede CHECK-Constraint möglich! CREATE ASSERTION icname CHECK NOT EXISTS ( SELECT * FROM t WHERE NOT (c ) ) entspricht einem ansonsten impliziten Allquantor: "Für alle Zeilen von t gilt c!" 2002 Prof. Dr. Rainer Manthey Informationssysteme 7 Assertions als CHECK-Constraints? Ist es umgekehrt möglich, jede Assertion durch (ggf. mehrere) CHECK-Constraints auszudrücken, die auf alle beteiligten Tabellen verteilt sind? im Beispiel: Die Assertion ist direkt äquivalent zu der lokalen Version, die wir bereits auf der 'prüfer'-tabelle kennengelernt haben. Aber könnte man sie ebensogut auch auf der 'professoren'-tabelle lokal vereinbaren, die ja genauso betroffen ist wie 'prüfer'? CREATE ASSERTION ausreichend_qualifiziert CHECK NOT EXISTS ( SELECT * FROM prüfer P WHERE P.Name NOT IN ( SELECT Name FROM professoren )) CREATE TABLE prüfer (......, CHECK ( Name IN ( SELECT Name FROM professoren ) ) ) CREATE TABLE professoren (..., CHECK? ) 2002 Prof. Dr. Rainer Manthey Informationssysteme 8
5 Assertions repräsentiert durch CHECK-Constraints CREATE ASSERTION ausreichend_qualifiziert CHECK NOT EXISTS ( SELECT * FROM prüfer P WHERE P.Name NOT IN ( SELECT Name FROM professoren )) einzige "Lösung" hier: CHECK-Bedingung der Assertion unverändert als CHECK-Constraint auf der Tabelle 'professoren' übernehmen CREATE TABLE professoren (...., CHECK NOT EXISTS ( SELECT * FROM prüfer P WHERE P.Name NOT IN ( SELECT Name FROM professoren )) Unterschiedliche Bedeutung, wenn Professoren- Tabelle leer ist!! 2002 Prof. Dr. Rainer Manthey Informationssysteme 9 CHECK-Constraints mit Referenzen und Assertions: Resümee Die Verwendung der beiden "anspruchsvollen" Formen von SQL-Integritätsbedingungen - CHECK-Constraints mit eingebetteten Anfragen und Assertions - erfordert ein sehr gutes Verständnis der Möglichkeiten zur Formulierung von Bedingungsausdrücken in SQL ganz generell! Insbesondere die Wahl zwischen dem "Lokalisieren" tabellenübergreifender Constraints als Tabellenbeschränkungen oder dem Gebrauch globaler Assertions ist diffizil und sehr fehlerträchtig! im Zweifelsfall: Assertions verwenden! Leider werden beide Konzepte bisher von kommerziellen Produkten nicht zugelassen, obwohl sie seit langem zum SQL-Standard gehören! In der Forschung sind seit langem Methoden zur effizienten Überprüfung solcher "Mehrtabellenbeschränkungen" bekannt. Wer also komplexere Integritätsanforderungen formulieren will, muss auf "Notlösungen" mittels imperativem Code in Anwendungsprogrammen zurückgreifen Prof. Dr. Rainer Manthey Informationssysteme 10
6 Integritätsprüfung in SQL wichtiges Thema im Zusammenhang mit SQL-Constraints: Modalitäten der Überprüfung von Integritätsbedingungen Änderungen werden in SQL i.a. im Rahmen von Transaktionen abgesetzt: Transaktion: Folge von DML-Anweisungen, die als "unteilbare Einheit" angesehen wird Ausführung einer Transaktion erfolgt entweder ganz oder gar nicht! Transaktionen müssen immer zu konsistenten DB-Zuständen führen (alle Integritätsbedingungen erfüllt) genauere Diskussion des Konzepts "Transaktion": später separat! wichtiges Motiv zur Einführung von Transaktionen: Manche Übergänge von konsistentem Zustand in konsistenten Folgezustand sind nur durch inkonsistente Zwischenschritte möglich! Konsequenz für Integritätsprüfung bei Transaktionsverarbeitung: Prüfung sollte (eigentlich immer) am Transaktionsende erfolgen! 2002 Prof. Dr. Rainer Manthey Informationssysteme 11 Integritätsprüfung in SQL (2) in SQL dagegen: Wenn nichts Gegenteiliges definiert, erfolgt Integritätsprüfung immer sofort (d.h., direkt nach Bearbeiten der Änderung). Motivation: Viele einfache Tabellen-Constraints können und sollten sofort geprüft werden, da sie unabhängig von allen anderen Änderungen sind. aber insbesondere für referentielle Zyklen : Prüfung am Transaktionsende ist unerlässlich! z.b.: C 1 : "Jede Vorlesung wird von einem Professor gehalten!" C 2 : "Jeder Professor muss mindestens eine Vorlesung halten!" Vorlesung Professor Bei Einstellung eines neuen Professors wird ein konsistenter Zustand nur durch eine Transaktion aus zwei Einzeleinfügungen erreicht: INSERT INTO professoren INSERT INTO vorlesungen Jeder Zwischenzustand wäre inkonsistent: Keine Reihung möglich! 2002 Prof. Dr. Rainer Manthey Informationssysteme 12
7 Integritätsprüfung in SQL (3) daher: zwei Formen der Integritätsprüfung in SQL vorgesehen IMMEDIATE und DEFERRED Bedeutung: IMMEDIATE-Constraints werden sofort überprüft, DEFERRED-Constraints erst am Transaktionsende: leider: ohne explizite Angabe wird IMMEDIATE als Default-Modus angenommen: Ändern dieser Default-Einstellung: zusätzliche Klausel bei Constraint-Vereinbarung INITIALLY DEFERRED INITIALLY (dt.: anfangs)? Während einer Transaktion kann Default dynamisch geändert werden: SET CONSTRAINTS { < list-of-constraints > ALL } { DEFERRED IMMEDIATE } zusätzlich: Manche Constraints können als NOT DEFERRABLE deklariert werden. Fazit: Integritätsprüfung in "vollem" SQL ist eine diffizile Angelegenheit! 2002 Prof. Dr. Rainer Manthey Informationssysteme 13 Triggers - Reaktionsauslöser Triggers in SQL 2002 Prof. Dr. Rainer Manthey Informationssysteme 14
8 Trigger und aktive Datenbanken bereits in frühen SQL-Entwürfen und in ersten relationalen Systemen: Automatische Auslösung von Änderungen durch das DBMS als Reaktion auf explizite Änderungen durch Benutzer oder Anwendungsprogramme vorgesehen Vereinbarungen solcher automatischen Folgeänderungen in Regelform: Trigger andere Bezeichnung für Trigger: aktive Regel Bezeichnung für DBMS, das Trigger unterstützt: aktives DBMS Name des zugehörigen Forschungsgebiets: aktive Datenbanken im SQL92-Standard: noch kein Triggerkonzept vorgesehen aber: Trigger wurden bereits in fast allen kommerziellen DB-Produkten in ähnlicher Form seit längerem angeboten (ORACLE, DB/2, Sybase, Informix u.a.) im neuen SQL3-Standard (1999): umfangreiches Triggerkonzept erstmals standardisiert 2002 Prof. Dr. Rainer Manthey Informationssysteme 15 Aktive Regeln Aktive Regeln werden auch ECA-Regeln genannt, womit die drei Bestandteile dieser Regeln hervorgehoben werden: E C A "event" Ereignisspezifikation "condition" Auslösebedingung "action" Aktionsspezifikation Beispiel einer ECA-Regel (in Pseudo-Code): E C A ON IF DO modify(kontostand(k), V_neu) V_neu < dispositionskredit(k) sperre_konto(k) 2002 Prof. Dr. Rainer Manthey Informationssysteme 16
9 Aktive Regeln (2) prinzipielle Bedeutung einer aktiven Regel: zusätzliche, automatisch ausgelöste "Hintergrundaktivität" "Oberflächenprozeß" (z.b. Transaktion)... (suspendiert)... beobachten E C A? reagieren "Hintergrundaktivität" prüfen Kann rekursiv weitere aktive Regeln auslösen! 2002 Prof. Dr. Rainer Manthey Informationssysteme 17 SQL-Trigger: erstes Beispiel Beispiel eines SQL-Triggers: Auslösezeitpunkt Triggername CREATE TRIGGER erstevorlesung AFTER INSERT ON professoren REFERENCING NEW ROW AS Newcomer FOR EACH ROW WHEN (NOT EXISTS ( SELECT * Bedingung Aktion auslösende Änderung FROM vorlesungen WHERE Name = Newcomer.Name ) BEGIN ATOMIC INSERT INTO vorlesungen VALUES (Newcomer.Name, NULL, 4-std.); INSERT INTO übungen VALUES (Newcomer.Name, NULL, 2-std.) END "Transitionsvariable" 2002 Prof. Dr. Rainer Manthey Informationssysteme 18
10 SQL-Trigger: Zwischenbilanz Triggerkonzept von SQL: offenbar syntaktisch und semantisch ziemlich anspruchsvoll! im Gegensatz zu Views und Constraints: Trigger werden von Access bisher nicht direkt unterstützt! (nur indirekt über Formulare und Makros z.t. in Visual Basic) daher: detailliertere Einführung in SQL-Trigger erst später in dieser Vorlesung Auch das Zusammenwirken von Triggern und den (konzeptuell sehr ähnlichen) "referential actions" bei Fremdschlüsselbedingungen erfolgt später zusammen mit der Triggerdiskussion. wegen semantischer Probleme (komplexes Ausführungsmodell, komplexes Zusammenspiel mit Integritätsprüfung): SQL-Trigger werden bisher in der Praxis nur selten und mit grosser Vorsicht verwendet! aber: Anwendungsmöglichkeiten für aktive DB-Technologie sind sehr groß und gehen weit über die ursprüngliche Motivation durch "Reparatur" von Integritätsverletzungen hinaus! 2002 Prof. Dr. Rainer Manthey Informationssysteme 19 Views - Sichten Views in SQL 2002 Prof. Dr. Rainer Manthey Informationssysteme 20
11 Anfragen an Sichten: Expandierung zur Erinnerung: Sichtendefinition durch Kopplung eines Tabellennamens mit einer Anfrage (Tabellenausdruck) z.b.: CREATE VIEW C4-profs AS ( SELECT Name, Abteilung FROM professoren WHERE Grad = C4 ) Beantwortung von Anfragen, die sich auf Sichten beziehen, durch vorherige Expandierung der Sichtdefinition: statisches Einsetzen des AS-Ausdrucks SELECT Name FROM C4-profs WHERE Abteilung = III SELECT X.Name FROM ( SELECT Name, Abteilung FROM professoren WHERE Grad = C4 ) WHERE X.Abteilung = III AS X 2002 Prof. Dr. Rainer Manthey Informationssysteme 21 Rekursive Sichten Die Behandlung von Sichten in Anfragen durch Expandierung hat natürlich ihre Grenzen, wenn Sichtdefinitionen rekursiv werden, d.h., wenn eine Sicht sich in ihrem eigenen definierenden Ausdruck selbst referenziert. Beispiel: Gegeben eine Basistabelle 'direkt_benachbart' - definiere eine Sicht 'erreichbar', die Erreichbarkeit über Pfade von direkten benachbarten Knoten beliebiger Länge ausdrückt. In SQL könnte dies im Prinzip so aussehen: CREATE VIEW erreichbar AS ( (SELECT * FROM direkt_benachbart) UNION (SELECT X.von, Y.nach FROM direkt_benachbart AS X, erreichbar AS Y WHERE X.nach = Y.von) ) Diese Definition ist in SQL so nicht direkt erlaubt, aber seit SQL:1999 relativ ähnlich möglich (WITH RECURSIVE...). Um Anfragen über rekursiven Sichten beantworten zu können, muss das DBMS schrittweise während der Auswertung expandieren und stets auf Abbruch testen Prof. Dr. Rainer Manthey Informationssysteme 22
12 Änderungen von Sichten Sichten lassen sich auf zweierlei Weise ändern: Änderungen der zugrundeliegenden Basistabellen sind indirekt die Ursache für zusätzliche oder wegfallende Ableitungsmöglichkeiten: induzierte Änderungen der Sicht Änderungsbefehle werden direkt für die Sicht formuliert und müssen durch systematische Zurückführung auf die zugrundeliegenden Basistabellen realisiert werden: Sichtenänderungen (engl.: "view updates") in SQL: Induzierte Änderungen zeigen sich implizit bei der nächsten, auf die Basisdatenänderung folgenden Anfrage an die Sicht. Sichtenänderungen sind unter "strengen Auflagen" zugelassen, wenn eine eindeutige und sinnvolle automatische Realisierung möglich ist. Forschungsprobleme: nähere Diskussion in der Vorlesung "Deduktive DB" Wie bestimmt man effizient alle induzierten Änderungen? Welche Alternativen gäbe es für die Realisierung (da wo SQL "aufgibt")? 2002 Prof. Dr. Rainer Manthey Informationssysteme 23 Änderungen von Sichten: Beispiel induzierte Änderung auf einer Sicht: CREATE VIEW C4-profs AS ( SELECT Name, Abteilung FROM professoren WHERE Grad = C4 ) C4-profs professoren Name Abteilung Name Abteilung Grad induziert: Martini IV Martini IV C4 INSERT INTO professoren VALUES (,Martini',,IV',,C4') 2002 Prof. Dr. Rainer Manthey Informationssysteme 24
13 Änderungen von Sichten: Beispiel (2) INSERT INTO C4-profs VALUES (,Klein',,I') Sichtenänderung CREATE VIEW C4-profs AS ( SELECT Name, Abteilung FROM professoren WHERE Grad = C4 ) realisiert durch C4-profs professoren Name Abteilung Name Abteilung Grad induziert: Klein I Klein I C4 Sichtenänderungen werden immer nur indirekt durch eine induzierte Änderung wirksam! 2002 Prof. Dr. Rainer Manthey Informationssysteme 25 Sichtenänderungen in SQL: einfaches Grundprinzip häufig: Prinzipiell analoge Behandlung von Sichtenänderungen ("view updates") durch Expandierung ist möglich. Bei Modifikationen ist die Umsetzung meist offensichtlich, z.b.: CREATE VIEW C4-profs AS ( SELECT Name, Abteilung FROM professoren WHERE Grad = C4 ) UPDATE C4-profs SET Name = N.N. WHERE Abteilung = II UPDATE professoren SET Name = N.N. WHERE Abteilung = II AND Grad = C4 analog: Löschen von Zeilen in einer Sicht ist übersetzbar durch Löschen von Zeilen der zugrundeliegenden Basistabellen. bei Einfügungen: In der Sicht fehlende Spalten der Basistabellen sind "auffüllbar" durch Default-Werte (sofern deklariert) oder NULL Prof. Dr. Rainer Manthey Informationssysteme 26
14 Sichtenänderungen: problematische Fälle Problem: Es gibt Sichten, bei denen Änderungen gar nicht oder nicht eindeutig durch Expandierung auf Basistabellen rückführbar sind. charakteristisches Beispiel: JOIN-Sicht professoren Anlauf C3 II Baier C3 I Buhmann C3 III Cremers C4 III?? CREATE VIEW verantwortliche_abt AS ( SELECT P.Abteilung, V.Semester, V.Titel FROM professoren P, vorlesungen V WHERE P.Name = V.name ) vorlesungen Anlauf Inf I WS 00/01 Baier Inf III WS 00/01 Cremers Inf III WS 02/03 INSERT INTO verantwortliche_abt VALUES ( III, WS 01/02, Inf I ) 2002 Prof. Dr. Rainer Manthey Informationssysteme 27 Sichtenänderungen: problematische Fälle Analoge Anwendung des Prinzips "Verwende Defaults für fehlende Werte!" würde zu folgenden Einfügungen führen (mit N.N. als generellem Namensdefault): professoren Anlauf C3 II Baier C3 I Buhmann C3 III Cremers C4 III N.N. C4 III CREATE VIEW verantwortliche_abt AS ( SELECT P.Abteilung, V.Semester, V.Titel FROM professoren P, vorlesungen V WHERE P.Name = V.name ) vorlesungen Anlauf Inf I WS 00/01 Baier Inf III WS 00/01 Cremers Inf III WS 02/03 INSERT INTO verantwortliche_abt VALUES ( III, WS 01/02, Inf I ) N.N. Inf I WS 01/02 Aber ist diese Lösung wirklich gemeint? Warum soll nicht einer der aufgeführten Professoren der Abt. III die Vorlesung halten? Aber welcher? Und wieso gerade ein C4rer? 2002 Prof. Dr. Rainer Manthey Informationssysteme 28
15 Sichtenänderungen: problematische Fälle (3) professoren Anlauf C3 II Baier C3 I Buhmann C3 III Cremers C4 III vorlesungen Anlauf Inf I WS 00/01 Baier Inf III WS 00/01 Cremers Inf III WS 02/03 Noch offensichtlicheres Problem bei Löschungen aus Join-Sichten, z.b.: DELETE FROM verantwortliche_abt WHERE Semester = WS 00/01 AND Titel = Inf III AND Abteilung =,I' zu löschende Sichtzeile: ( I, WS 00/01, Inf III ) Zeile entsteht durch Join folgender Basistabellen-Zeilen: a) in professoren: ( Baier, C3,,I' ) b) in vorlesungen: ( Baier, Inf III, WS 00/01 ) Welche dieser beiden Zeilen soll gelöscht werden? a) oder b) oder beide?? 2002 Prof. Dr. Rainer Manthey Informationssysteme 29 Sichtenänderungen: problematische Fälle (4) DELETE FROM verantwortliche_abt WHERE Semester = WS 00/01 AND Titel = Inf III AND Abteilung = I professoren Anlauf C3 II Baier C3 I Buhmann C3 III Cremers C4 III? vorlesungen Anlauf Inf I WS 00/01 Baier Inf III WS 00/01 Cremers Inf III WS 02/03 Pragmatisch "vernünftige" Lösung: DBMS analysiert Sichtenänderung und bestimmt alle sinnvollen Alternativen der Realisierung Benutzer, der die Änderung wünscht, entscheidet darüber, welche Variante "gemeint" ist (in interaktivem Dialog) im Beispiel: Offensichtlich ist nur die Löschung aus 'vorlesungen' gemeint! 2002 Prof. Dr. Rainer Manthey Informationssysteme 30
16 Änderbare Sichten in SQL in Standard-SQL: Stattdessen drastische Beschränkung der Zulässigkeit von Änderungsoperationen auf Sichten Konzept der änderbaren Sicht (engl.: updatable view ) Ist eine Sicht änderbar, dann sind alle Änderungsoperationen auf dieser Sicht zulässig. Ist eine Sicht dagegen nicht änderbar, dann ist keine solche Operation zulässig. (Differenzierung nach Änderungsart erfolgt nicht, obwohl oft sinnvoll!) Diese Beschränkung ist drastisch, da auch Fälle verhindert werden, in denen eine sinnvolle Rückführung auf Basistabellen denkbar wäre. auch bei änderbaren Sichten: Fehlschlag einer Sichtenänderung ist möglich, wenn Integritätsbedingungen auf zugrundeliegenden Basistabellen durch automatische Rückführung verletzt würden... Defaultvereinbarungen für benötigte Spalten fehlen (bei INSERT) 2002 Prof. Dr. Rainer Manthey Informationssysteme 31 Änderbare Sichten (2) Bedingungen für Änderbarkeit von Sichten in SQL (u.a.): AS-Teil der Sichtdefinition muss ein SELECT-Block sein! ( keine relationenalgebraische Verknüpfung) Kein SELECT DISTINCT zulässig! In der SELECT-Liste: nur direkte, einfache Spaltenreferenzen möglich! (d.h. keine Aggregierung zulässig) FROM-Teil darf nur genau eine Tabelle referenzieren (Basistabelle oder weitere Sicht) Wenn der FROM-Teil eine weitere Sicht referenziert, muss diese Sicht ebenfalls änderbar sein! Der WHERE-Teil darf keine geschachtelte Referenz auf dieselbe Tabelle enthalten, die im FROM-Teil referenziert wird! Keine GROUP BY- oder HAVING-Klausel erlaubt! 2002 Prof. Dr. Rainer Manthey Informationssysteme 32
17 Integritätsbedingungen für Sichten Obwohl Sichten vom SQL-Standard ebenfalls als Tabellen angesehen werden (abgeleitete Tabellen statt Basistabellen), sind sie in SQL (bisher) nur "Bürger zweiter Klasse", denn man kann ihnen keine Integritätsbedingungen zuordnen, auch wenn dies eigentlich sinnvoll wäre. Folgende Definition wäre z.b. sinnvoll, ist aber nicht zulässig: CREATE VIEW C4-profs AS ( ( SELECT Name, Abteilung FROM professoren WHERE Grad = C4 ), PRIMARY KEY Name, CHECK Abteilung IN ('I'; 'II'; 'III'; 'IV'; 'V'; 'VI') ); Wahrscheinlich wäre die CHECK-Constraint für die Abteilungsnummern bereits auf der Basistabelle 'professoren' vereinbart und würde dadurch auch bei Sichtenänderungen indirekt mit überprüft. Aber die Primärschlüsselbedingung könnte man u.u. nicht herleiten Prof. Dr. Rainer Manthey Informationssysteme 33 Integritätsbedingungen für Sichten (2) Sichten dürfen auch nicht in FOREIGN KEY-Constraints von Tabellen referenziert werden (weil Sichten keine Schlüssel haben dürfen)! aber: Sichten dürfen sowohl in Assertions als auch in CHECK-Constraints innerhalb einer CREATE TABLE-Anweisung referenziert werden! Die meisten SQL-Bücher schweigen sich über diese Möglichkeit aus oder "kennen" sie gar nicht - in den kommerziellen Systemen ist sie sowieso gar nicht erst implementiert worden, da Assertions und Referenzen in CHECK- Constraints generell fehlen. Damit ergibt sich die "seltsame" Situation, dass eine Fremdschlüsselbeziehung zu einer Sicht zwar nicht "direkt" über FOREIGN KEY, aber "indirekt" über eine an sich bedeutungsäquivalente CHECK-Constraint ausdrückbar ist: nicht zulässig: zulässig: REFERENCES C4-profs (Name) CHECK IN (SELECT Name FROM C4-profs) 2002 Prof. Dr. Rainer Manthey Informationssysteme 34
18 Sichtdefinitionen als Integritätsbedingungen? bei genauerer Betrachtung: Eine Sichtdefinition sollte eigentlich selbst wie eine Integritätsbedingung wirken! CREATE VIEW ordinarien AS ( SELECT Name, Grad FROM professoren WHERE Grad > C3 ) kritisch INSERT INTO ordinarien VALUES ( Manthey, C3 ) Beispielzustand von professoren : ordinarien Karpinski C4 V Martini C4 IV Cremers C4 III Blum C3 V Buhmann C3 III Manthey C3 NULL INSERT INTO professoren VALUES ( Manthey, C3, NULL) vernünftig (aber trotzdem problematisch): Gewünschte Zeile sollte eigentlich nicht in neuen Zustand der Sicht erscheinen! 2002 Prof. Dr. Rainer Manthey Informationssysteme 35 CHECK-Option für Sichten für solche Fälle: Möglichkeit, Sichtdefinition quasi als Integritätsbedingung zu vereinbaren CHECK OPTION Wird CHECK OPTION bei einer Sichtdefinition mit vereinbart, dann werden alle Sichtenänderungen zurückgewiesen, die die Sichtdefinition verletzen : CREATE VIEW ordinarien AS ( SELECT Name, Grad FROM professoren WHERE Grad > C3 ) WITH CHECK OPTION bei Sichten, die auf anderen Sichten aufbauen: Wahl zwischen LOCAL und CASCADED als Variante der CHECK OPTION (Default: CASCADED) LOCAL: Überprüfung nur auf der nächsten Ebene CASCADED: Überprüfungen bei allen zugrundeliegenden Sichten Folge: sehr komplexe, oft nicht intuitiv nachvollziehbare Automatismen (Empfehlung von Date: immer CHECK OPTION mit CASCADED ) 2002 Prof. Dr. Rainer Manthey Informationssysteme 36
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
MehrSQL. Fortgeschrittene Konzepte Auszug
SQL Fortgeschrittene Konzepte Auszug Levels SQL92 Unterteilung in 3 Levels Entry Level (i.w. SQL89) wird von nahezu allen DBS Herstellern unterstützt Intermediate Level Full Level SQL DML 2-2 SQL92 behebt
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
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
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
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
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
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
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
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
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
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!
Mehr1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:
Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:
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
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!
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
MehrTerminierungs-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
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
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. 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
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
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.
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
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
MehrDatenbankentwurf. 4.2 Logischer Entwurf. Kapitel 4. ER-Modell. Umsetzung. Entwurfsdokumentation. relationales Modell. Verbesserung
4.2 Logischer Entwurf Datenbankentwurf 4.2 Logischer Entwurf 2002 Prof. Dr. Rainer Manthey Informationssysteme Logischer Entwurf: Einordnung Entwurfsdokumentation logische Strukturen "auf dem Papier" konzeptueller
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
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
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/
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.
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
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
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
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
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.
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
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
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
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,
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
MehrIn diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.
In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access Die Grundlagen der Datenbanken kurspc15 Inhaltsverzeichnis Access... Fehler! Textmarke nicht
Mehr2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)
1. Einführung: Über den ODBC-Zugriff können Sie bestimmte Daten aus Ihren orgamax-mandanten in anderen Anwendungen (beispielsweise Microsoft Excel oder Microsoft Access) einlesen. Dies bietet sich beispielsweise
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
MehrBenutzerverwaltung Business- & Company-Paket
Benutzerverwaltung Business- & Company-Paket Gemeinsames Arbeiten mit der easyfeedback Umfragesoftware. Inhaltsübersicht Freischaltung des Business- oder Company-Paketes... 3 Benutzerverwaltung Business-Paket...
MehrWS 2002/03. Prof. Dr. Rainer Manthey. Institut für Informatik III Universität Bonn. Informationssysteme. Kapitel 1. Informationssysteme
Informationssysteme Informationssysteme WS 2002/03 Prof. Dr. Rainer Manthey Institut für Informatik III Universität Bonn 2002 Prof. Dr. Rainer Manthey Informationssysteme 1 DB und/oder IS: terminologischer
MehrONLINE-AKADEMIE. "Diplomierter NLP Anwender für Schule und Unterricht" Ziele
ONLINE-AKADEMIE Ziele Wenn man von Menschen hört, die etwas Großartiges in ihrem Leben geleistet haben, erfahren wir oft, dass diese ihr Ziel über Jahre verfolgt haben oder diesen Wunsch schon bereits
MehrIst Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?
UErörterung zu dem Thema Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken? 2000 by christoph hoffmann Seite I Gliederung 1. In zu großen Mengen ist alles schädlich. 2.
MehrOP-LOG www.op-log.de
Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server
MehrAlso kann nur A ist roter Südler und B ist grüner Nordler gelten.
Aufgabe 1.1: (4 Punkte) Der Planet Og wird von zwei verschiedenen Rassen bewohnt - dem grünen und dem roten Volk. Desweiteren sind die Leute, die auf der nördlichen Halbkugel geboren wurden von denen auf
MehrStellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster
Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.
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
MehrSEMINAR Modifikation für die Nutzung des Community Builders
20.04.2010 SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung ecktion SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung Bevor Sie loslegen
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
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
MehrBauteilattribute als Sachdaten anzeigen
Mit den speedikon Attributfiltern können Sie die speedikon Attribute eines Bauteils als MicroStation Sachdaten an die Elemente anhängen Inhalte Was ist ein speedikon Attribut?... 3 Eigene Attribute vergeben...
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
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
MehrFORUM HANDREICHUNG (STAND: AUGUST 2013)
FORUM HANDREICHUNG (STAND: AUGUST 2013) Seite 2, Forum Inhalt Ein Forum anlegen... 3 Forumstypen... 4 Beiträge im Forum schreiben... 5 Beiträge im Forum beantworten... 6 Besondere Rechte der Leitung...
MehrWhitepaper. Produkt: combit Relationship Manager / address manager. Integration der Ansicht "Adressen" in eigene Solution
combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager / address manager Integration der Ansicht "Adressen" in eigene Solution Integration der Ansicht "Adressen" in
MehrSQL 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
MehrUnterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus:
Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: If-clauses - conditional sentences - Nie mehr Probleme mit Satzbau im Englischen! Das komplette Material finden Sie hier: School-Scout.de
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
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
MehrIn diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.
Tutorial: Wie erfasse ich einen Termin? In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Neben den allgemeinen Angaben zu einem
MehrFolgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:
Firewall für Lexware professional konfigurieren Inhaltsverzeichnis: 1. Allgemein... 1 2. Einstellungen... 1 3. Windows XP SP2 und Windows 2003 Server SP1 Firewall...1 4. Bitdefender 9... 5 5. Norton Personal
MehrMai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln
Hauptseminar: Nichtrelationale Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Mai 2006 Was ist eine Datenbank? Erweiterung relationaler um eine Deduktionskomponente Diese
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
Mehr4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.
Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel
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
Mehr1 topologisches Sortieren
Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung
MehrMicrosoft Update Windows Update
Microsoft bietet mehrere Möglichkeit, Updates durchzuführen, dies reicht von vollkommen automatisch bis zu gar nicht. Auf Rechnern unserer Kunden stellen wir seit September 2006 grundsätzlich die Option
MehrHandbuch Fischertechnik-Einzelteiltabelle V3.7.3
Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3
MehrPrimzahlen und RSA-Verschlüsselung
Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also
Mehr! " # $ " % & Nicki Wruck worldwidewruck 08.02.2006
!"# $ " %& Nicki Wruck worldwidewruck 08.02.2006 Wer kennt die Problematik nicht? Die.pst Datei von Outlook wird unübersichtlich groß, das Starten und Beenden dauert immer länger. Hat man dann noch die.pst
MehrSuche schlecht beschriftete Bilder mit Eigenen Abfragen
Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere
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...
Mehrteischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep
teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep 1. Erstellen Sie ein neues Rechnungsformular Mit book n keep können Sie nun Ihre eigenen
MehrIBIS Professional. z Dokumentation zur Dublettenprüfung
z Dokumentation zur Dublettenprüfung Die Dublettenprüfung ist ein Zusatzpaket zur IBIS-Shopverwaltung für die Classic Line 3.4 und höher. Dubletten entstehen dadurch, dass viele Kunden beim Bestellvorgang
MehrKleines Handbuch zur Fotogalerie der Pixel AG
1 1. Anmelden an der Galerie Um mit der Galerie arbeiten zu können muss man sich zuerst anmelden. Aufrufen der Galerie entweder über die Homepage (www.pixel-ag-bottwartal.de) oder über den direkten Link
MehrEinführung in die Algebra
Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 13 Einheiten Definition 13.1. Ein Element u in einem Ring R heißt Einheit, wenn es ein Element v R gibt mit uv = vu = 1. DasElementv
MehrUpdatehinweise für die Version forma 5.5.5
Updatehinweise für die Version forma 5.5.5 Seit der Version forma 5.5.0 aus 2012 gibt es nur noch eine Office-Version und keine StandAlone-Version mehr. Wenn Sie noch mit der alten Version forma 5.0.x
MehrÜbungsblatt 8- Lösungsvorschlag
Universität Innsbruck - Institut für Informatik Prof. Günther Specht, R.Binna, N.Krismer, M. Tschuggnall 30. November 2012 Proseminar Datenbanksysteme Übungsblatt 8- Lösungsvorschlag Aufgabe 1 (Trigger)
MehrWhitepaper. 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
MehrStammdaten Auftragserfassung Produktionsbearbeitung Bestellwesen Cloud Computing
Stammdaten Auftragserfassung Produktionsbearbeitung Bestellwesen Cloud Computing Finanzbuchhaltung Wenn Sie Fragen haben, dann rufen Sie uns an, wir helfen Ihnen gerne weiter - mit Ihrem Wartungsvertrag
Mehr3. Stored Procedures und PL/SQL
3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln
MehrDie Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.
In einer Website haben Seiten oft das gleiche Layout. Speziell beim Einsatz von Tabellen, in denen die Navigation auf der linken oder rechten Seite, oben oder unten eingesetzt wird. Diese Anteile der Website
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,
MehrWas meinen die Leute eigentlich mit: Grexit?
Was meinen die Leute eigentlich mit: Grexit? Grexit sind eigentlich 2 Wörter. 1. Griechenland 2. Exit Exit ist ein englisches Wort. Es bedeutet: Ausgang. Aber was haben diese 2 Sachen mit-einander zu tun?
MehrHandbuch zum Excel Formular Editor
Handbuch zum Excel Formular Editor Mit diesem Programm können Sie die Zellen von ihrer Excel Datei automatisch befüllen lassen. Die Daten können aus der Coffee Datenbank, oder einer weiteren Excel Datendatei
MehrArtikel Schnittstelle über CSV
Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte
MehrE-Mail-Inhalte an cobra übergeben
E-Mail-Inhalte an cobra übergeben Sie bieten ihren potentiellen oder schon bestehenden Kunden über ihre Website die Möglichkeit, per Bestellformular verschiedene Infomaterialien in Papierform abzurufen?
MehrSeite 1 von 14. Cookie-Einstellungen verschiedener Browser
Seite 1 von 14 Cookie-Einstellungen verschiedener Browser Cookie-Einstellungen verschiedener Browser, 7. Dezember 2015 Inhaltsverzeichnis 1.Aktivierung von Cookies... 3 2.Cookies... 3 2.1.Wofu r braucht
MehrYouTube: Video-Untertitel übersetzen
Der Easytrans24.com-Ratgeber YouTube: Video-Untertitel übersetzen Wie Sie mit Hilfe von Easytrans24.com in wenigen Schritten Untertitel für Ihre YouTube- Videos in mehrere Sprachen übersetzen lassen können.
MehrKonstante Relationen
Konstante Relationen values-syntax erzeugt konstante Relation values ( [, Konstante] * )[, ( [, Konstante] * )]* Beispiel values (1, eins ), (2, zwei ), (3, drei ); Resultat ist eine
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
MehrStep by Step Webserver unter Windows Server 2003. von Christian Bartl
Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird
MehrKapitel 10 Aktive DBMS
Kapitel 10 Aktive DBMS 10 Aktive DBMS 10 Aktive DBMS...1 10.1 Einführung und Definition...2 10.2 Funktionsprinzip: ADBMS und ECA-Modell...4 10.3 Potentiale und Vorteile ADBMS...5 10.4 Aktive Elemente einer
MehrGrundlagen der Theoretischen Informatik, SoSe 2008
1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)
MehrBenutzeranleitung Kontoverwaltung
Benutzeranleitung Kontoverwaltung Die Provisionierungs-Plattform http://cp.solution.ch dient der Verwaltung von Hosted Exchange 2010 und SharePoint Benutzern. Provisionierungs-Zustände Bei der Provisionierung
Mehr