4.9 Datentyp TABLE (vereinfacht) 4.10 Konstruierte Datentypen. Definition einer Tabelle am Beispiel
|
|
- Ralf Solberg
- vor 5 Jahren
- Abrufe
Transkript
1 49 atentyp TABLE (vereinfacht) 4 er SQL-Standard 49 atentyp TABLE (vereinfacht) 4 er SQL-Standard 410 Konstruierte atentypen efinition einer Tabelle am Beispiel CREATE TABLE Stadt ( SName VARAR(50), PName VARAR(50), LCode AR(4), Einwohner NTEGER, LGrad NUMBER, BGrad NUMBER, PRMARY KEY (SName,PName,LCode) ) CREATE TABLE Land ( Provinzen VARAR(50) ARRAY[20] Organisationen ROW(Organiation VARAR(50), Art VARAR(20)) MULTSET CREATE TABLE Stadt ( Koordinaten ROW(LGrad NUMBER, BGrad NUMBER ) atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 44 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite Konstruierte atentypen 4 er SQL-Standard 410 Konstruierte atentypen 4 er SQL-Standard 410 Konstruierte atentypen Ein atentyp heißt konstruiert, sofern seine Werte aus Werten anderen Typen, sogenannter Element-Typen, zusammengesetzt sind er atentyp ARRAY fasst mehrere Werte seines Element-Typs geordnet zusammen, die über einen ndex referenziert werden können er Typ ROW lässt hingegen zu, dass Werte unterschiedlicher Element-Typen geordnet zusammengefasst werden und das der Zugriff auf die einzelnen Komponenten über Bezeichner, analog zu Spaltenbezeichern, ermöglicht wird er atentyp MULTSET fasst mehrere Werte eines Element-Typs, möglicherweise mit uplikaten, zu einer ungeordneten Menge zusammen ie fünfte Provinz eines Landes wird mittels Provinzen[5] referenziert er Längengrad innerhalb der Koordinaten einer Stadt kann mittels eines Pfadausdrucks der orm KoordinatenLGrad angesprochen werden Mittels ( EU, member ) ELEMENT Organisationen wird getestet, ob die Mitgliedschaften eines Landes bezüglich der EU den member-status hat atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 45 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 47
2 411 Einfügen, Löschen und Ändern 4 er SQL-Standard 411 Einfügen, Löschen und Ändern Sequenznummern 4 er SQL-Standard 411 Einfügen, Löschen und Ändern Beim Einfügen von Zeilen muss die Eindeutigkeit des Primärschlüssels gewährleistet sein Einfügen Mittels NSERT kann eine neue Zeile, oder eine Menge von neuen Zeilen in eine Tabelle T eingefügt werden Werden nicht zu allen Attributen von T Werte gegeben, so werden für die fehlenden Werte möglicherweise vorgesehene efault-werte, bzw der Nullwert null genommen ie Angabe der Spaltennamen kann entfallen, wenn die Werte in der Reihenfolge der Spaltennamen in der CREATE-Anweisung definiert werden Beispiel Sequenznummerngenerator CREATE SEQUENCE LandSEQ AS NTEGER START WTH 1 /*kleiner (größer) oder gleich MAXVALUE (MNVALUE) sein*/ NCREMENT BY 1 /*eine positive (negative) Zahl*/ MNVALUE 1 /*muss kleiner MAXVALUE sein*/ MAXVALUE /*muss größer als MNVALUE sein*/ NO CYCLE /*CYCLE: wenn MAXVALUE (MNVALUE) erreicht, */ /*beginne wieder mit MNVALUE (MAXVALUE)*/ /*Mehrfachverwendung von Werten führt uu zu einem */ /*Laufzeitfehler*/ NSERT NTO Land (LandNr, LName, HStadt, läche) VALUES ( NEXT VALUE OR LandSEQ, Bavaria, Munich,70) atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 48 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 50 4 er SQL-Standard 411 Einfügen, Löschen und Ändern 4 er SQL-Standard 411 Einfügen, Löschen und Ändern Aufnahme eines neuen Mitgliedes in die EU NSERT NTO Mitglied (LCode, Organisation, Art) VALUES ( PL, EU, member ) Alle Länder die Mitglied in irgendwelchen Organisationen sind, die aber noch nicht in der Relation Land auftreten, werden in diese Relation übernommen NSERT NTO Land ( LCode ) SELECT STNCT MLCode ROM Mitglied M WHERE NOT EXSTS ( SELECT LLCode ROM Land L WHERE LLCode = MLCode) Beispiel dentitätsspalte CREATE TABLE Land LandNr NTEGER GENERATE ALWAYS AS ENTTY ( START WTH 1 NCREMENT BY 1 MNVALUE 1 MAXVALUE NO CYCLE), NSERT NTO Land (LName, HStadt, läche) VALUES ( Bavaria, Munich, 70) atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 49 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 51
3 4 er SQL-Standard 411 Einfügen, Löschen und Ändern 4 er SQL-Standard 411 Einfügen, Löschen und Ändern generierte Spalten er Wert eines Attributes ergibt sich automatisch aus den Werten anderer Attribute desselben Tupels Beispiel CREATE TABLE Land ( LandNr NTEGER GENERATE ALWAYS AS ENTTY ( ),, läche NUMBER, Einwohner NUMBER, ichte GENERATE ALWAYS (Einwohner / läche)) Ändern UPATE T SET A 1 = val 1,, A n = val n WHERE P Anstelle eines direkten Wertes innerhalb einer Zuweisung kann auch ein skalarer Ausdruck stehen m Zuge der Euro-Umstellung, werden die Angaben des Bruttosozialprodukt angepasst UPATE Land SET BruttoSP = CASE BruttoSP WHEN LCode = THEN BruttoSP * 0,5 WHEN LCode = THEN BruttoSP * 0,16 ELSE NULL EN atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 52 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 54 4 er SQL-Standard 411 Einfügen, Löschen und Ändern 412 Sichten 4 er SQL-Standard 412 Sichten Löschen ELETE ROM T WHERE P Es werden alle Tupel aus T, für die der bedingte Ausdruck P wahr ist, markiert und anschließend aus T entfernt Beispiel Löschen des gesamten nhalts der Tabelle Stadt ELETE ROM Stadt Löschen von ausgewählten Zeilen ELETE ROM Stadt WHERE Einwohner < (SELECT AVG(Einwohner) ROM Stadt) Eine Sicht V ist eine durch einen Anfrageausdruck E definierte Tabelle: CREATE VEW V AS <E> m Unterschied zu den als Sicht definierten Tabellen bezeichnen wir die mittels CREATE TABLE definierten Tabellen als Basistabellen Bezeichner von Sichten dürfen in SQL überall stehen, wo ein Tabellenbezeichner stehen darf atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 53 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 55
4 4 er SQL-Standard 412 Sichten 4 er SQL-Standard 412 Sichten efiniere zu der Tabelle Benachbart eine bezüglich Symmetrie abgeschlossene Tabelle symbenachbart in orm einer Sicht LCode1 Benachbart LCode2 CREATE VEW symbenachbart AS SELECT LCode1 AS Von, LCode2 AS Nach ROM Benachbart UNON SELECT LCode2 AS Von, LCode1 AS Nach ROM Benachbart Welche Länder sind zu eutschland benachbart? SELECT Nach ROM symbenachbart WHERE Von = Ändern von Sichten Sei R ein atenbank-schema Eine atenbankänderung ist eine unktion t von der Menge der nstanzen zu R auf sich selbst Eine Sicht ist eine unktion f von der Menge aller nstanzen zu R in die Menge aller nstanzen zu S, wobei S das durch die Sicht definierte Relationsschema ist Eine Sichtänderung ist eine unktion u von der Menge aller nstanzen zu S auf sich selbst Sei u eine Sichtänderung und t eine atenbankänderung, so dass für jede atenbank-nstanz gilt: u(f ()) = f (t()), dann nennen wir t eine Transformation von u Auf einer Sicht sind grundsätzlich nur solche Änderungen zulässig, zu denen eine Transformation existiert atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 56 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 58 4 er SQL-Standard 412 Sichten 4 er SQL-Standard 412 Sichten Materialisierte und virtuelle Sichten Ein atenbanksystem kann Sichten entweder bei Bedarf jeweils neu berechnen, oder eine einmal berechnete Sicht für weitere Bearbeitungen permanent speichern m ersten all redet man von einer virtuellen Sicht, im zweiten all von einer materialisierten Sicht Soll eine Anfrage bearbeitet werden, die sich auf eine virtuelle Sicht bezieht, so wird vor Ausführung der Anfrage der Name der Sicht durch den sie definierenden Ausdruck ersetzt (Anfrage-Modifizierung) Gegenüber einer materialisierten Sicht hat eine virtuelle Sicht den Vorteil, dass ihr nhalt garantiert dem aktuellen Zustand der atenbank entspricht Beispiel A B B C r = a b s = b c x b b z insert (y,b,c) in v Es existiert keine Transformation v = r s = A B C a b c a b z x b c x b z Standardmäßig ist eine Sicht einer atenbank virtuell Materialiserte Sichten werden typischerweise für sogenannte atenlager (ata-warehouses) eingesetzt; zu ihrer Aktualisierung ist häufig ein erheblicher organisatorischer und systemtechnischer Aufwand vonnöten m folgenden betrachten wir ausschließlich virtuelle Sichten Eine interessante rage ist, ob in einer virtuellen Sicht Einfügen, Löschen und Ändern von Zeilen erlaubt sein kann, oder nicht delete (a,b,c) in v Es existiert keine Transformation update (a,b,c) zu (y,b,c) in v Es existiert keine Transformation atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 57 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 59
5 4 er SQL-Standard 412 Sichten 4 er SQL-Standard 412 Sichten Projektionssicht Einfügen, Löschen und Ändern ist nur dann erlaubt, wenn der Schlüssel der Basistabelle komplett in der Sicht vorhanden ist nformationen über Länder sind nur anonymisiert erlaubt CREATE VEW Landnfo AS SELECT läche, Einwohner ROM Land NSERT NTO Landnfo VALUES (250000,20) NSERT nicht zulässig Verbundsicht n SQL-92 und in SQL:1999 werden eine Reihe von Regeln diskutiert, deren Erfülltsein die Existenz einer Transformation sichern iese Regeln garantieren im Wesentlichen ein eindeutiges Rückverfolgen der Sichtänderung zu einzelnen Zeilen in den Basistabellen Ordne jeder Stadt ihren Kontinent zu CREATE VEW Stadtnfo AS SELECT SSName, LKontinent ROM Stadt S, Lage L WHERE SLCode = LLCode NSERT NTO Stadtnfo VALUES ( reiburg, reiländereck ) NSERT nicht zulässig atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 60 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 62 4 er SQL-Standard 412 Sichten 4 er SQL-Standard 412 Sichten n-line/temporary-table Sichten mittels WTH Selektionssicht Aufgrund von Einfügungen und Änderungen können als unerwünschter Seiteneffekt Zeilen aus der Sicht herausfallen und damit in anderen Sichten erkennbar werden ieser Seiteneffekt kann durch Hinzunahme der Klausel WTH ECK OPTON zu der Sichtdefinition verhindert werden Beschränkung auf Großstädte CREATE VEW Großstadt AS SELECT * ROM Stadt WHERE Einwohner >= 1000 UPATE Großstadt SET Einwohner=Einwohner*09 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 61 Vergleiche: SELECT STNCT SLCode ROM Stadt S WHERE (SELECT AVG(Einwohner) ROM Stadt WHERE LCode = SLCode) = (SELECT MN(Einw) ROM (SELECT AVG(Einwohner) AS Einw ROM Stadt GROUP BY Lcode)); mit WTH avgeinwohner AS (SELECT LCode, AVG(Einwohner) AS Einw ROM Stadt GROUP BY Lcode), mineinwohner AS (SELECT MN(Einw) as mine ROM avgeinwohner) SELECT LCode ROM avgeinwohner S WHERE SEinw = (SELECT mine ROM mineinwohner); WTH führt zu einer klareren Struktur, im Sinne einer lokal definierten virtuellen Sicht (in-line view), materialisierten Sicht (temporären Tabelle) atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 63
6 4 er SQL-Standard 413 SQL und Programmiersprachen 413 SQL und Programmiersprachen 4 er SQL-Standard 413 SQL und Programmiersprachen (A) SQL-Erweiterung 4 SQL hat eine tabellenorientierte Sematik SQL hat eine im Vergleich zu einer Programmiersprache eingeschränkte Mächtigkeit, so dass es typischerweise ermöglicht wird, SQL von einem in einer gängigen Programmiersprache geschriebenen Programm aus aufzurufen Anwendungen können so unter Ausnutzung der vollen Mächtigkeit einer Programmiersprache atenbank-nstanzen verarbeiten mpedance-mismatch! eklaration von Variablen, Zuweisung von Werten an Variable, Sequenz von Anweisungen, bedingte Anweisungen und Wiederholungsanweisungen, unktionen und Prozeduren unktionen können als parametrisierbare virtuelle Sichten betrachtet werden 4 Oracle verwendet teilweise eine andere Syntax! atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 64 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 66 4 er SQL-Standard 413 SQL und Programmiersprachen 4 er SQL-Standard 413 SQL und Programmiersprachen Ansätze der ntegration (A) Erweiterung von SQL um imperative Sprachelemente zur ormulierung von in der atenbank gespeicherten benutzerdefinierten unktionen und Prozeduren (SQL-Erweiterung) (B) Einbettung von SQL-Ausdrücken in eine Programmiersprache (statisches SQL) (C) Übergabe eines datenabhängig gebildeten SQL-Ausdrucks an eine atenbank während der Ausführung eines Programms (dynamisches SQL) Tabellen Benachbart LCode1 LCode2 symbenachbart LCode1 LCode2 Berechne zu der Tabelle Benachbart den symmetrischen Abschluss CREATE UNCTON symbenachbart() RETURNS TABLE ( LCode1 AR(4), LCode2 AR(4) ) RETURN (SELECT * ROM Benachbart UNON SELECT LCode2 AS LCode1, LCode1 AS LCode2 ROM Benachbart ) SELECT * ROM TABLE (symbenachbart()) T atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 65 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 67
7 4 er SQL-Standard 413 SQL und Programmiersprachen 4 er SQL-Standard 413 SQL und Programmiersprachen Gib zu einem Land alle erreichbaren Länder mit der Mindestanzahl Grenzübergänge an CREATE UNCTON ErreichbarVon(Start AR(4)) RETURNS TABLE ( Nach AR(4), Anzahl NTEGER ) BEGN CREATE TABLE Erreichbar ( Nach AR(4), Anzahl NTEGER ); ECLARE alt, neu NTEGER; /* nitialisiere mit den direkt erreichbaren Ländern */ NSERT NTO Erreichbar SELECT TLCode2 AS Nach, 1 AS Anzahl ROM TABLE (symbenachbart()) T WHERE TLCode1 = Start; /* nitialisiere Abbruchbedingung */ SET alt = 0; SET neu = (SELECT COUNT(*) ROM Erreichbar); /* Berechne iterativ die indirekt erreichbaren Länder */ WHLE (alt <> neu) O SET alt = neu; NSERT NTO Erreichbar SELECT STNCT BLCode2, (AAnzahl + 1) ROM Erreichbar A, TABLE (symbenachbart()) B WHERE ANach = BLCode1 AN BLCode2 <> Start AN BLCode2 NOT N (SELECT Nach ROM Erreichbar); SET neu = (SELECT COUNT(*) ROM Erreichbar); EN WHLE; RETURN Erreichbar; EN atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 68 Zyklen und Mehrfachberechnungen sollen vermieden werden STNCT berücksichtigt den all, dass zum selben Land mehrere Wege gleicher Länge existieren können Zyklen werden berücksichtigt, indem ein weiteres Land nur dann hinzugefügt wird, wenn das neu berechnete Land nicht bereits als erreichbares Land bekannt ist Zyklen zum Start werden ebenfalls ausgeschlossen NSERT NTO Erreichbar SELECT STNCT BLCode2, (AAnzahl + 1) ROM Erreichbar A, TABLE (symbenachbart()) B WHERE ANach = BLCode1 AN BLCode2 <> Start AN BLCode2 NOT N (SELECT Nach ROM Erreichbar); atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 70 4 er SQL-Standard 413 SQL und Programmiersprachen 4 er SQL-Standard 413 SQL und Programmiersprachen nitialisiere Erreichbar mit den direkt erreichbaren Ländern NSERT NTO Erreichbar SELECT TLCode2 AS Nach, 1 AS Anzahl ROM TABLE (symbenachbart()) T WHERE TLCode1 = Start; ie Berechnung soll terminieren, wenn kein neues indirekt erreichbares Land hinzugekommen ist SET neu = (SELECT COUNT(*) ROM Erreichbar); WHLE (alt <> neu) O SET alt = neu; NSERT NTO Erreichbar SET neu = (SELECT COUNT(*) ROM Erreichbar) EN WHLE; (B) statisches SQL Stehen die auszuführenden SQL-Anfragen bereits zur Übersetzungszeit eines Programms als Teil des Programmcodes fest, dann redet man von einer statischen Einbettung von SQL in eine Programmiersprache Eine datenabhängige Änderung der Anfragen während der Ausführung des Programms ist dann nicht mehr möglich ie Ergebnisse einer SQL-Anfrage werden innerhalb des Programms mittels eines Cursors zugänglich gemacht atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 69 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 71
8 4 er SQL-Standard 413 SQL und Programmiersprachen 4 er SQL-Standard 413 SQL und Programmiersprachen (C) dynamisches SQL EXEC SQL ECLARE StadtCursor CURSOR OR SELECT STNCT SSName, LLName ROM Stadt S, Land L WHERE SLCode = LandLCode; EXEC SQL OPEN StadtCursor; EXEC SQL ET StadtCursor NTO :stadtname, :landname; EXEC SQL CLOSE StadtCursor; Können wir einen SQL-Ausdruck während der Ausführung eines Programms in orm einer Zeichenkette an das atenbanksystem übergeben, so redet man von dynamischem SQL Standardisierte Schnittstellen: OBC und JBC Erweiterung von Java: SQLJ Berechnen einer Adjazenzmatrix <?php sql connect( Mondial, lausen, buch ); $AdjazenzMatrix = array(); $query = SELECT * ROM Benachbart ; $result = sql query($query); while ($row = sql fetch assoc($result)) { $i = $row[ von ]; $j = $row[ nach ]; $AdjazenzMatrix[$i][$j] = 1; }?> atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 72 atenbanken und nformationssysteme, WS 2012/13 27 November 2012 Seite 73
3.7 Struktur der Syntax
3. Der SQL-Standard 3.7. Struktur der Syntax Seite 1 3.7 Struktur der Syntax Orthogonalität der Syntax Ein Ausdruck, der eine Tabelle definiert, ist überall dort zulässig ist, wo eine Tabelle stehen darf.
Mehr3.13 SQL und Programmiersprachen
3. Der SQL-Standard 3.13. SQL und Programmiersprachen Seite 1 3.13 SQL und Programmiersprachen SQL hat eine tabellenorientierte Sematik. SQL hat eine im Vergleich zu einer Programmiersprache eingeschränkte
MehrKapitel 2: Einstieg in SQL
Kapitel 2: Einstieg in SQL 2. Einstieg in SQL 2. SQL (Structured Query Language) ist die in der Praxis am weitesten verbreitete Datenbanksprache für relationale Datenbanken. Die Historie von SQL geht zurück
MehrInduktionsschluss: Sei Q RA eine Anfrage der Relationenalgebra mit n > 0 Operatoren.
1 Aufgabe 3.1: Wir beweisen durch Induktion über die Anzahl Operatoren π, σ,,,, δ eines Ausdrucks der Relationenalgebra, dass zu jeder Anfrage der Relationenalgebra eine äquivalente Anfrage in SQL existiert.
Mehr4.5 Anfragen mit Mengenoperatoren
4. Der SQL-Standard 4.5. Anfragen mit Mengenoperatoren 4.5 Anfragen mit Mengenoperatoren UNION,INTERSECT und. Die beteiligten Tabellen müssen zueinander kompatible Spaltentypen haben. Die Resultatspalte
MehrKapitel 5: Der SQL-Standard
Kapitel 5: Der SQL-Standard 5. Der SQL-Standard 5. Ein Anfrageausdruck in SQL besteht aus einer SELECT-Klausel, gefolgt von einer FROM-Klausel, gefolgt von einer WHERE-Klausel. Grundform eines SFW-Ausdruck
MehrKapitel 7: Referentielle Integrität
Kapitel 7: Referentielle Integrität Im Allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen (IB) erfüllen. Integritätsbedingungen
Mehr4.14 Integrität und Trigger
4.14 Integrität und Trigger Im Allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen (IB) erfüllen. Integritätsbedingungen können
MehrKapitel 2: Einstieg in SQL
2. Einstieg in SQL Seite 1 Kapitel 2: Einstieg in SQL SQL (Structured Query Language) ist die in der Praxis am weitesten verbreitete Datenbanksprache für relationale Datenbanken. Die Historie von SQL geht
MehrBeispiel zur referentiellen Integrität
3. Der SQL-Standard 3.14. Integrität und Trigger Seite 1 Beispiel zur referentiellen Integrität CREATE TABLE T1( k1 NUMERIC NOT NULL PRIMARY KEY); CREATE TABLE T2( k2 NUMERIC NOT NULL PRIMARY KEY, k1 NUMERIC,
Mehrzu E 1 der Form (0, 1) erfüllen.
1 Aufgabe 4.1: Sei B ein Beziehungstyp über den drei Entitätstypen E 1, E 2 und E 3. Sei ohne Beschränkung der Allgemeinheit die Beziehungskomplexität zu E 1 der Form (0, 1). Wir zeigen, dass B durch die
MehrKapitel 3: Der SQL-Standard
3. Der SQL-Standard Seite 1 Kapitel 3: Der SQL-Standard SQL ist die in der Praxis am weitesten verbreitete Datenbanksprache für relationale Datenbanken. Die Historie von SQL geht zurück bis 1974, die Anfangszeit
MehrKapitel 4: Entwurf der Relationsschemata
4. Entwurf der Relationsschemata 4. Kapitel 4: Entwurf der Relationsschemata konzeptueller Entwurf: finde eine umfassende Strukturierung der gesamten Informationsanforderungen der Miniwelt. Resultat: konzeptuelles
MehrWelche Kunden haben die gleiche Ware bestellt? select distinct a1.name, a2.name from Auftrag a1, Auftrag a2 where a1.ware = a2.ware.
*HVFKDFKWHOWH$QIUDJHQ In einer SQL-Anweisung können in der where-klausel, from-klausel, select-klausel wieder SQL-Anweisungen auftreten. Man spricht dann auch von einer geschachtelten Anfrage oder Unteranfrage.
MehrKapitel 6: SQL und XML
6. SQL und XML Seite 1 Kapitel 6: SQL und XML Wie können die Inhalte einer Datenbank als XML-Dokumente exportiert werden (Publizieren von XML? Wie können die Inhalte eines XML-Dokumentes in eine Datenbank
MehrKapitel 4 Dynamisches SQL
Kapitel 4 Dynamisches SQL Flien zum Datenbankpraktikum Wintersemester 2012/13 LMU München 2008 Thmas Bernecker, Tbias Emrich 2010 Tbias Emrich, Erich Schubert unter Verwendung der Flien des Datenbankpraktikums
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
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
MehrSeminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.
Seminar 2 SQL - DML(Data Manipulation Language) und DDL(Data Definition Language) Befehle. DML Befehle Aggregatfunktionen - werden auf eine Menge von Tupeln angewendet - Verdichtung einzelner Tupeln yu
MehrKapitel 9. Embedded SQL. Prof. Dr. Wolfgang Weber Vorlesung Datenbanken 1
Kapitel 9 Embedded SQL Vorlesung Datenbanken 1 Embedded SQL (siehe auch [Date00]) Arbeitsweise ähnlich PL/SQL, allerdings: Normale Programmiersprache mit eingestreuten SQL-Befehlen und anderen Befehlen
MehrPraktische SQL-Befehle 2
Praktische SQL-Befehle 2 Datenbanksysteme I WiSe 2018/2019 Todor Ivanov DB1 WS2018 1 Praktische SQL-Befehle Functions Views Triggers Voraussetzung: Laptop + MySQL/ MariaDB + Workbench! DB1 WS2018 2 Airport
MehrISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de
08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren
MehrKapitel 4 Dynamisches SQL
Kapitel 4 Dynamisches SQL Flien zum Datenbankpraktikum Wintersemester 2010/11 LMU München 2008 Thmas Bernecker, Tbias Emrich unter Verwendung der Flien des Datenbankpraktikums aus dem Wintersemester 2007/08
MehrRelationales Datenbanksystem Oracle
Relationales Datenbanksystem Oracle 1 Relationales Modell Im relationalen Modell wird ein relationales Datenbankschema wie folgt beschrieben: RS = R 1 X 1 SC 1... R n X n SC n SC a a : i=1...n X i B Information
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
MehrDatenbanken im WI-Unterricht mit
Datenbanken im WI-Unterricht mit Inhaltsverzeichnis 1 ER-Modell - Entity Relationship Modell 1 1.1 Entitäten................................................. 2 1.2 Relationen................................................
MehrDie Anweisung create table
SQL-Datendefinition Die Anweisung create table create table basisrelationenname ( spaltenname 1 wertebereich 1 [not null],... spaltenname k wertebereich k [not null]) Wirkung dieses Kommandos ist sowohl
MehrWS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)
Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)
MehrInhaltsverzeichnis. Einleitung
vn Inhaltsverzeichnis Einleitung Kapitel 1: Eine Einführung in relationale Datenbanken 7 Was ist eine relationale Datenbank? 9 Verknüpfen der einzelnen Tabellen 10 Die Reihenfolge der Zeilen ist beliebig
MehrKapitel 4: Der SQL-Standard
Kapitel 4: Der SQL-Standard 4. Der SQL-Standard 4. Ein Anfrageausdruck in SQL besteht aus einer SELECT-Klausel, gefolgt von einer FROM-Klausel, gefolgt von einer WHERE-Klausel. Grundform eines SFW-Ausdruck
MehrZusammengesetzte Datentypen
Zusammengesetzte Datentypen.1 Records... -4.1.1 Implizite Typdeklaration mit %ROWTYPE... -6.1.2 Referenzierung eines Records... -6.2 PL/SQL Tables... -8.2.1 Deklaration einer PL/SQL Table... -8.3 Referenzierung
MehrKapitel 3: Entity-Relationship-Modell
Kapitel 3: Entity-Relationship-Modell Objekte und Beziehungen Objekte bilden die elementare Grundlage unserer Betrachtung. Objekte werden durch Tupel in Relationen repräsentiert und können durch Schlüsselwerte
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:
Mehr6. Trigger Charakterisierung von Triggern. 6. Trigger. Trigger definieren automatische Reaktionen auf Ereignisse, die durch Datenmanupilationen
6. Trigger Charakterisierung von Triggern 6. Trigger Trigger definieren automatische Reaktionen auf Ereignisse, die durch Datenmanupilationen auf einer Relation ausgelöst werden. Trigger stellen eine einfache
MehrFunktionen. Überblick über Stored Functions. Syntax zum Schreiben einer Funktion. Schreiben einer Funktion
Überblick über Stored Functions Funktionen Eine Funktion ist ein benannter PL/SQL- Block, der einen Wert zurückgibt. Eine Funktion kann in der Datenbank als Objekt zur wiederholbaren Ausführung gespeichert
Mehr3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7
1 Data Definition Language (DDL)... 2 1.1 Tabellen erstellen... 2 1.1.1 Datentyp...... 2 1.1.2 Zusätze.... 2 1.2 Tabellen löschen... 2 1.3 Tabellen ändern (Spalten hinzufügen)... 2 1.4 Tabellen ändern
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:
MehrOracle 10g Einführung
Kurs Oracle 10g Einführung Teil 5 Einführung Timo Meyer Administration von Oracle-Datenbanken Timo Meyer Sommersemester 2006 Seite 1 von 16 Seite 1 von 16 Agenda 1 Tabellen und Views erstellen 2 Indizes
MehrSQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans schmidt@cs.ro
MehrSQL: Weitere Funktionen
Vergleich auf Zeichenketten SQL: Weitere Funktionen LIKE ist ein Operator mit dem in Zeichenketten andere Zeichenketten gesucht werden; zwei reservierte Zeichen mit besonderer Bedeutung sind hier % (manchmal
Mehr4. Objektrelationales Typsystem Kollektionstypen. Nested Table
Nested Table Bei einer Nested Table handelt es sich um eine Tabelle als Attributwert. Im Gegensatz zu Varray gibt es keine Beschränkung bei der Größe. Definition erfolgt auf einem Basistyp, als Basistypen
MehrArbeit mit zusammengesetzten Datentypen
Arbeit mit zusammengesetzten Datentypen Zusammengesetzte Datentypen Typen: PL/SQL RECORDS PL/SQL TABELLEN Enthalten interne Komponenten Sind wiederverwendbar Copyright Oracle Corporation, 1998. All rights
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. 8 Hausaufgabe 1 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe (muehe@in.tum.de)
MehrDieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.
Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,
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
Mehr3.17 Zugriffskontrolle
3. Der SQL-Standard 3.17. Zugriffskontrolle Seite 1 3.17 Zugriffskontrolle Datenbanken enthalten häufig vertrauliche Informationen, die nicht jedem Anwender zur Verfügung stehen dürfen. Außerdem wird man
MehrKapitel 1: Einführung 1.1 Datenbanken?
1. Einführung 1.1. Datenbanken? Seite 1 Kapitel 1: Einführung 1.1 Datenbanken? 1. Einführung 1.1. Datenbanken? Seite 2 Willkommen! Studierenden-Datenbank Hans Eifrig hat die Matrikelnummer 1223. Seine
MehrÜbung Datenbanksysteme Updates, Integritätsbedingungen, funktionale Abhängigkeiten
Übung Datenbanksysteme Updates, Integritätsbedingungen, funktionale Abhängigkeiten 12.1.2004 Änderungsoperationen bei SQL (Daten) Einfügen neuer Tupel (schon bekannt) INSERT INTO Table (Spalte1, Spalte2)
MehrUniversität Augsburg, Institut für Informatik WS 2008/2009 Prof. Dr. W. Kießling 23. Nov Dr. A. Huhn, M. Endres, T. Preisinger Lösungsblatt 5
Universität Augsburg, Institut für Informatik WS 2008/2009 Prof. Dr. W. Kießling 23. Nov. 2007 Dr. A. Huhn, M. Endres, T. Preisinger Lösungsblatt 5 Aufgabe 1: SQL-Queries Datenbanksysteme I a) Geben Sie
MehrModerne Datenbankkonzepte
Verteilte Datenbanken Moderne Datenbankkonzepte Wünschenswert, aber extrem aufwändig ( Zweiphasen Commit) Objektrelationale Datenbanken Kompromiss zwischen relational und rein objektorientiert seit 1999
Mehr10. Programmieren in SQL
10. Programmieren in SQL Inhalt 10.1 Motivation 10.2 Prozedurale Erweiterungen von SQL 10.3 Gespeicherte Prozeduren 10.4 Benutzerdefinierte Funktionen 10.5 Verwendung anderer Programmiersprachen 2 10.1
MehrErzeugung und Veränderung von Tabellen
Datenbanken - Objekte Erzeugung und Veränderung von Tabellen Objekt Tabelle View Sequence Index Synonym Basiseinheit zum Speichern; besteht aus Zeilen und Spalten; Logische Repräsentation; kann Teilmengen
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
Mehr12. Datenschutz: Zugriffsrechte in SQL Datenschutz: Zugriffsrechte in SQL
12. Datenschutz: Zugriffsrechte in SQL 12-1 Datenschutz: Zugriffsrechte in SQL 12. Datenschutz: Zugriffsrechte in SQL 12-2 Inhalt 1. Anforderungen, Allgemeines 2. Die SQL-Befehle GRANT und REVOKE 3. Sichten
MehrAntwort auf QB ist Menge von Tupeln, i-e. selbst wieder Relation (wie bei rel. Algebra) in QB "Zugriff" auf Tupel mit Tupel-Variablen
Kapitel 6.3 SQL als Anfragesprache Kap. 6.3.1 Allgemeine Begriffe Identifiers: Var-Name ~ Tupel-Variable Table-Name ~ Rel., View Field-Name ~ Attribut-Bez. Key-Words: select where key is integer string
MehrSQL. Datenmanipulation. Datenmanipulationssprache. Ein neues Tupel hinzufügen. Das INSERT Statement
SQL Datenmanipulation Datenmanipulationssprache Ein DML Statement wird ausgeführt wenn: neue Tupel eingefügt werden existierende Tupel geändert werden existierende Tupel aus der Tabelle gelöscht werden
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
MehrDB I S. 1 Referentielle Aktionen [10 P.] Gegeben sei folgende Datendefinition:
1 Referentielle Aktionen Gegeben sei folgende Datendefinition: [10 P.] CREATE TABLE Wissenschaftler( SVNr int PRIMARY KEY, Vorname varchar(25) NOT NULL, Nachname varchar(25) NOT NULL, Gehalt int NOT NULL
MehrDaten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL
Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell Jetzt: -> Formulierung in DDL Daten-Definitionssprache (DDL) DDL ist Teil von SQL (Structured
MehrÜbung PL/SQL Trigger Lösungen
Übung PL/SQL Trigger Lösungen 1) Gebe das aktuelle Datum aus. Wofür steht dual? Ändere das Datum für Deine aktuelle Session auf das Format Jahr (4 Stellen) Monat (2 Stellen) Tag (2 Stellen)[Leerzeichen]Stunde
MehrAbfragen (Queries, Subqueries)
Abfragen (Queries, Subqueries) Grundstruktur einer SQL-Abfrage (reine Projektion) SELECT [DISTINCT] {* Spaltenname [[AS] Aliasname ] Ausdruck} * ; Beispiele 1. Auswahl aller Spalten SELECT * ; 2. Auswahl
MehrKapitel 1: Einführung 1.1 Datenbanken?
Kapitel 1: Einführung 1.1 Datenbanken? 1. Einführung 1.1. Datenbanken Grundlagen der Datenbanksysteme, WS 2012/13 29. Oktober 2012 Seite 1 1. Einführung 1.1. Datenbanken Willkommen! Studierenden-Datenbank
MehrDatenmanagement I SoSe 2006 Aufgabenblatt 4
Datenmanagement I SoSe 2006 Aufgabenblatt 4 June 11, 2009 Versuchen Sie, einige der Anfragen zu formulieren (ab Punkt 6), die im Tutorium stehen, das hier zu finden ist: http://wwwiti.cs.uni-magdeburg.de/iti_db/lehre/dm/tut/tutorium.html.
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
MehrUni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr. Praktikum: Datenbanken Woche 7: Noch mehr SQL
Praktikum: Datenbanken Raum: LF230 Abgabe bis 6.-8.6. 2005 Datum Gruppe Vorbereitung Präsenz Rekursive Anfragen In einem vollen SELECT-Statement ist es auch möglich, rekursive Anfragen zu stellen. Rekursive
MehrHochschule Karlsruhe Technik und Wirtschaft Fakultät für Informatik und Wirtschaftsinformatik
1. Aufgabe (Normalisierung, 28 Punkte) Das Maklerbüro Foldur-Estate beschäftigt mehrere Makler, die jeweils unterschiedliche Mietwohnungen im Angebot haben. Jede Wohnung hat einen Vermieter, Vermieter
MehrAufgabe 1: Integrität
Aufgabe 1: Integrität Gegeben sei das folgende Schema: Personal: (PNR, Name, Gehalt, Abt, Vorges) a) Geben Sie das CREATE TABLE Statement an, um die Tabelle Personal zu erzeugen. Folgende Integritätsbedingungen
Mehr2. Datenbank-Programmierung
2. Datenbank-Programmierung SQL ist eingeschränkt bezüglich der algorithmischen Mächtigkeit, z.b. Berechnung einer transitiven Hülle ist in Standard-SQL nicht möglich. Die Einschränkung ist von Bedeutung
MehrDatenbanksysteme noch Kapitel 7: SQL Vorlesung vom Oliver Vornberger. Institut für Informatik Universität Osnabrück
Datenbanksysteme 2013 noch Kapitel 7: SQL Vorlesung vom 13.05.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Sprung Transititve Hülle Transitive Hülle 35.) Liste alle Voraussetzungen
Mehrdbis Praktikum DBS I SQL Teil 2
SQL Teil 2 Übersicht Fortgeschrittene SQL-Konstrukte GROUP BY HAVING UNION / INTERSECT / EXCEPT SOME / ALL / ANY IN / EXISTS CREATE TABLE INSERT / UPDATE / DELETE 2 SELECT Syntax SELECT FROM [WHERE [GROUP
MehrEs geht also im die SQL Data Manipulation Language.
1 In diesem Abschnitt wollen wir uns mit den SQL Befehlen beschäftigen, mit denen wir Inhalte in Tabellen ( Zeilen) einfügen nach Tabelleninhalten suchen die Inhalte ändern und ggf. auch löschen können.
MehrDatenschutz: Zugriffsrechte in SQL
12. Datenschutz: Zugriffsrechte in SQL 12-1 12. Datenschutz: Zugriffsrechte in SQL 12-2 Inhalt Datenschutz: Zugriffsrechte in SQL 1. Anforderungen, Allgemeines 2. Die SQL-Befehle GRANT und REVOKE 3. Sichten
MehrVIEWS UND WEITERE TABELLEN-OPERATIONEN
KAPITEL 9 VIEWS UND WEITERE TABELLEN-OPERATIONEN 9.1 Vereinbarung und Einsatz von Views 9.1.1 Einrichtung von Views Die CREATE VIEW-Anweisung Von Ausnahmen abgesehen ist es wie wir zuvor erläutert haben
MehrSQL Data Manipulation Language (DML) und Query Language (QL)
Innsbruck Information System University of Innsbruck School of Management Information Systems Universitätsstraße 15 6020 Innsbruck SQL Data Manipulation Language (DML) und Query Language (QL) Universität
MehrGROUP BY, HAVING und Sichten
GROUP BY, HAVING und Sichten Tutorübungen 09/33 zu Grundlagen: Datenbanken (WS 14/15) Michael Schwarz Technische Universität München 11.11 / 12.11.2014 1/12 GROUP BY HAVING Sichten Eine Tabelle studenten
MehrLogischer Entwurf. Stufen der Entwicklung einer Datenbank. Inhalt. Übersicht. 1. Datenbank - Entwurf ( ER - Diagramm)
10. Logischer Entwurf 10-1 10. Logischer Entwurf 10-2 Stufen der Entwicklung einer Datenbank 1. Datenbank - Entwurf ( ER - Diagramm) Logischer Entwurf 2. Umsetzen des ER - Diagramms ins relationale Modell
MehrGliederung. n Teil I: Einleitung und Grundbegriffe. n Teil II: Imperative und objektorientierte Programmierung
Gliederung n Teil I: Einleitung und Grundbegriffe l 1. Organisatorisches l 2. Grundlagen von Programmiersprachen n Teil II: Imperative und objektorientierte Programmierung l 1. Grundelemente der Programmierung
MehrDatenbanken SQL. Insert, Update, Delete, Drop. Krebs
Datenbanken SQL Insert, Update, Delete, Drop Krebs Inhalt 1. Datensätze einfügen: INSERT 2. Datensätze verändern: UPDATE 3. Datensätze löschen: DROP vs. DELETE Beispiel Datenbank Schule Klasse P_Klasse
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.
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
MehrKapitel 10. JDBC und SQLJ. Prof. Dr. Wolfgang Weber Vorlesung Datenbanken 1
Kapitel 10 JDBC und SQLJ 1 JDBC und SQLJ Bisher: Einbettung von SQL (statisch bzw. dynamisch) in C, C++, COBOL, ADA (embedded SQL) bzw. prozedurale Erweiterungen für SQL in Oracle (PL/SQL) Was ist mit
MehrCreate-Table-Befehl. CREATE TABLE Tabellenname ( { Spalte { Datentyp Gebietsname } [ Spaltenbedingung [ ] ] Tabellenbedingung }
Create-Table-Befehl CREATE TABLE Tabellenname ( { Spalte { Datentyp Gebietsname } [ Spaltenbedingung [ ] ] Tabellenbedingung } [, ] ) Liste der wichtigsten Datentypen in SQL INTEGER INT SMALLINT NUMERIC(x,y)
MehrDatenbank und Tabelle mit SQL erstellen
Datenbank und Tabelle mit SQL erstellen 1) Übung stat Mit dem folgenden Befehlen legt man die Datenbank stat an und in dieser die Tabelle data1 : CREATE DATABASE stat; USE stat; CREATE TABLE data1 ( `id`
MehrDer Einsatz von SELECT from INSERT auf dem System i
Zwei Operationen werden zu einer neuen Funktion von Jinmei Shen und Karl Hanson INSERT und SELECT waren vor V6R1 in DB2 für i5/os zwei getrennte Operationen. Um eingefügte Spaltenwerte abzufragen, konnte
MehrKlausur PI Datenbanken II vom Name: Praktische Informatik (Krägeloh)
Versehen Sie jedes Aufgabenblatt/-blätter mit Ihrem Namen und geben es mit ab! Seite 1 Aufgabe 1: ( 30 Punkte) 1) Ein Entity-Set E1 wird in die Subklassen S1 und S2 spezialisiert. Was bedeutet die Aussage:
MehrRelationenmodell. Ziel:
Relationenmodell Ziel:! geringe Redundanz,! gute Handhabbarkeit,! einfache Zugriffe über möglichst wenige Tabellen! Sicherstellung von Konsistenz und Integrität. Beispielrelation Verkaeufer-Produkt Verk.-Nr.
MehrDatenbanken Unit 9: OLAP, OLTP und objektrelationale Datenbanken
Datenbanken Unit 9: OLAP, OLTP und objektrelationale Datenbanken 17. V. 2017 Outline 1 Organisatorisches 2 SQL 3 OLTP, OLAP, SAP, and Data Warehouse OLTP and OLAP SAP 4 Objekt-relationale Datenbanken Beispiel
MehrSQL 2. Ziele. Fortgeschrittene SQL-Konstrukte. Aggregatfunktionen revisited. Subqueries. Korrelierte Subqueries
SQL 2 Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Fortgeschrittene SQL-Konstrukte groupby having union / intersect / except Aggregatfunktionen revisited Subqueries Korrelierte
MehrUniversität Augsburg, Institut für Informatik WS 2011/2012 Prof. Dr. W. Kießling 09. Dez Dr. M. Endres, Dr. S. Mandl, F. Wenzel Lösungsblatt 6
Universität Augsburg, Institut für Informatik WS 2011/2012 Prof. Dr. W. Kießling 09. Dez. 2011 Dr. M. Endres, Dr. S. Mandl, F. Wenzel Lösungsblatt 6 Datenbanksysteme I Aufgabe 1: Deklarative Änderungsoperationen
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
MehrEinführung in die Informatik II
Einführung in die Informatik II Relationale Datenbanken und SQL Theorie und Anwendung Prof. Dr. Nikolaus Wulff Gründe für eine Datenbank Meist werden Daten nicht in XML-Dokumenten, sondern innerhalb einer
MehrÜbersicht der wichtigsten MySQL-Befehle
Übersicht der wichtigsten MySQL-Befehle 1. Arbeiten mit Datenbanken 1.1 Datenbank anlegen Eine Datenbank kann man wie folgt erstellen. CREATE DATABASE db_namen; 1.2 Existierende Datenbanken anzeigen Mit
MehrDatenbanken Unit 4: Das Relationale Modell & Datenintegrität
Datenbanken Unit 4: Das Relationale Modell & Datenintegrität 15. III. 2016 Outline 1 Organisatorisches 2 SQL 3 Relationale Algebra Notation 4 Datenintegrität Organisatorisches Erster Zwischentest: nach
MehrTriggern. Change Data Capture
Triggern. Change Data Capture Triggers Was sind Triggers? Eine bestimmte Art von gespeicherte Prozedur, die automatisch ausgeführt wird wenn eine DML oder DDL Anweisung ausgeführt wird Eine Menge von Aktionen,
Mehr9. Sicherheitsaspekte
9. Sicherheitsaspekte Motivation Datenbanken enthalten häufig sensible Daten (z.b. personenbezogene oder unternehmenskritische) Vielzahl verschiedener Benutzer hat Zugriff (z.b. Anwendungen, Mitarbeiter,
MehrTeil VIII. Weitere Datenbanksprachen
Teil VIII Weitere Datenbanksprachen Weitere Datenbanksprachen 1 Programmiersprachenanbindung 2 QBE 3 Änderungen in QBE 4 Anfragen in Access Sattler / Saake Datenbanksysteme Wintersemester 2010/11 8 1 Programmiersprachenanbindung
Mehr