4. Datenbankdefinitionssprachen
|
|
- Alke Scholz
- vor 8 Jahren
- Abrufe
Transkript
1 4. Datenbankdefinitionssprachen SQL-DDL ODL (Object Definition Language) für objektorientierte Datenbanksysteme nach dem ODMG-Standard Objektrelationale Konzepte DDL-Erweiterungen von SQL:1999 Oracle9i XML: DTD und XML Schema VL Objektrelationale Datenbanken Relationales Modell: SQL-DDL SQL-DDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben VL Objektrelationale Datenbanken 4 2 Anforderungen an eine relationale DDL nach Codd 1982 Sprachmittel zur Definition von 1. Attributen 2. Wertebereichen 3. Relationenschemata 4. Primärschlüsseln 5. Fremdschlüsseln Praxis SQL-89: Relationenschemata mit Attributen und Wertebereichen ab SQL-92 vollständig VL Objektrelationale Datenbanken 4 3
2 SQL als Definitionssprache Externe Ebene create view, drop view Konzeptuelle Ebene create table, alter table, drop table Konzeptuelle Ebene (SQL-92) create domain, alter domain, drop domain Interne Ebene create index, alter index, drop index VL Objektrelationale Datenbanken 4 4 Die Anweisung create table create table basisrelationenname ( spaltenname_1 wertebereich_1 [not null], spaltenname_k wertebereich_k [not null]) VL Objektrelationale Datenbanken 4 5 Erlaubte Wertebereiche in create table integer (oder auch integer4, int), smallint (oder auch integer2) float(p) (oder auch kurz float) decimal(p,q) und numeric(p,q) mit jeweils q Nachkommastellen character(n) (oder kurz char(n), bei n = 1 auch char) für Strings fester Länge n character varying(n) (oder kurz varchar(n)) für Strings variabler Länge bis zur Maximallänge n bit(n) oder bit varying(n) analog für Bitfolgen date, time bzw. timestamp für Datums-, Zeit- und kombinierte Datums-Zeit-Angaben VL Objektrelationale Datenbanken 4 6
3 Beispiel Tabellendefinition mit SQL-92 create table Buecher ( ISBN char(10), Titel varchar(200), Verlagsname varchar(30), primary key (ISBN), foreign key (Verlagsname) references Verlage (Verlagsname) ) VL Objektrelationale Datenbanken 4 7 Erweiterungen in SQL-92 Neben Primär- und Fremdschlüssel in SQL-92: default-klausel: Defaultwerte für Attribute create domain-anweisung benutzerdefinierte Wertebereiche check-klausel weitere lokale Integritätsbedingungen innerhalb der zu definierenden Wertebereiche, Attribute und Relationenschemata VL Objektrelationale Datenbanken 4 8 Definition eines Wertebereichs create domain Gebiete varchar(20) default Informatik create table Vorlesungen ( V_Bezeichnung varchar(80) not null, SWS smallint, Semester smallint, Studiengang Gebiete ) create table Mitarbeiter ( PANr integer not null, AngNr char(10) not null, Fachbereich Gebiete, Gehalt decimal(10,2), Raum integer, Einstellung date ) VL Objektrelationale Datenbanken 4 9
4 Integritätsbedingungen mit check create domain Gebiete varchar(20) default Informatik check ( value in ( Informatik, Mathematik, Elektrotechnik, Linguistik ) ) VL Objektrelationale Datenbanken 4 10 Integritätsbedingungen mit check /2 create table Vorlesungen ( V_Bezeichnung varchar(80) not null, primary key, SWS smallint check(sws 0), Semester smallint check( Semester between 1 and 9), Studiengang Gebiete ) VL Objektrelationale Datenbanken 4 11 Integritätsbedingungen mit check /3 create table Buch_Versionen ( ISBN char(10), Auflage smallint check(auflage > 0), Jahr integer check (Jahr between 1800 and 2020), Seiten integer check(seiten > 0), Preis decimal(8,2) check(preis 250), primary key (ISBN, Auflage), foreign key (ISBN) references Bcher (ISBN), check ((select sum(preis) from Buch_Versionen)< (select sum(budget) from Lehrsthle))) VL Objektrelationale Datenbanken 4 12
5 4.2. Objektorientiertes Modell: ODL Datendefinitionssprache der ODMG für Objektdatenbanken programmiersprachenneutral (Erweiterung der OMG-IDL) Beschreibung der Schnittstellen (Objekttypen) Attribute, Beziehungen, Methodensignaturen Implementierung in konkreter Programmiersprache Mapping für C++, Java, Smalltalk Präprozessor, Schema-Compiler VL Objektrelationale Datenbanken 4 13 ODL: Konzepte Schnittstelle: Spezifikation des abstrakten Verhaltens eines Typs Klasse: Spezifikation des abstrakten Verhaltens und Zustands eines Typs Attribut: benannte Eigenschaften von Literal- oder Objektdatentypen Beziehungen: Verweise (Referenzen) auf andere Objekte (einstellig/mehrstellig) Operationen: Methoden mit Parametern, Rückgabewert, Ausnahmen VL Objektrelationale Datenbanken 4 14 ODL: Beispiel class Student : Person ( extent Studenten, key matrnr) attribute char matrnr[6]; attribute string studienfach; attribute set<struct<float note, string fach>> zeugnis; relationship Person mutter inverse Person::kind; relationship Person vater inverse Person::kind; } float durchschnittsnote () raises (keine_note); void exmatrikulation (in string art) raises (buecher_ausgeliehen); VL Objektrelationale Datenbanken 4 15
6 Erläuterung ODL-Beispiel Objekttyp Personen beschreibt Typhierarchie: Angabe der Obertypen hinter dem Typnamen (hier: Obertyp Person) Extension, in der die aktuell erzeugten Objekte vom Typ Student gesammelt werden sollen (hier: Extension mit dem Namen Studenten) Schlüssel des Objekttyps, eine Auswahl der Attribute, die zur eindeutigen Identifizierung der Objekte unabhängig von der Objektidentität verwendet werden können (hier: nur das Attribut matrnr) Attribute mit Datentypen und Namen VL Objektrelationale Datenbanken 4 16 Erläuterung ODL-Beispiel /2 Beziehungen zu anderen Klassen mit dem Wortsymbol relationship auch inverse Beziehungen ermöglichen Wahl zwischen 1:1-, 1:n, und n:m- Kardinalitäten hier: zwei 1:n-Beziehungen Vater und Mutter zwischen Studenten und Personen, da nur die Rückrichtung einen Set-Typ enthält: set<person> kind Methoden mit ihrer Schnittstelle und einer spezifizierten Ausnahmebehandlung, die im Fehlerfall ausgelöst wird (etwa bei Verletzung von Integritätsbedingungen) VL Objektrelationale Datenbanken 4 17 ODL: Vererbung isa-beziehung (Generalisierung/Spezialisierung): Vererbung von Verhalten interface Object { }; interface Dokument : Object { }; extends-beziehung: Vererbung von Verhalten und Zustand (nur Einfachvererbung) class Buch : Dokument { }; class Monographie extends Buch { }; VL Objektrelationale Datenbanken 4 18
7 ODL: Beziehungen Umsetzung von m:n-beziehungen besucht(student[0,*], Vorlesung[0,*]) class Vorlesung { relationship set<student> wird_besucht_von inverse Student::besucht; } class Student { relationship set<vorlesung> besucht inverse Vorlesung::wird_besucht_von; } VL Objektrelationale Datenbanken 4 19 ODL: Beziehungen /2 Umsetzung von Beziehungen mit Attributen wird_geprüft(student[0,*], Vorlesung[0,*]; Note) class Pruefung { attribute int note; relationship Vorlesung fach inverse Vorlesung::pruefung; relationship Student pruefling inverse Student::pruefung; } class Student { relationship set<pruefung> pruefung inverse Pruefung::pruefling; } VL Objektrelationale Datenbanken 4 20 Java-ODL Nutzung von Java-Klassendefinitionen als DDL keine neue Sprache notwendig aber nur eingeschränkte Definitionsmöglichkeiten teilweise Ergänzung mittels Informationen aus Konfigurationsdateien Persistenzfähigkeit von Java-Klassen durch Präprozessor: Verarbeitung einer Java-Klassendefinition, Extraktion der notwendigen Schemainformationen, Hinzufügen von DB-spezifischem Code Postprozessor: Verarbeitung von kompilierten Bytecode, Code-Modifikation entsprechend Persistenzanforderungen VL Objektrelationale Datenbanken 4 21
8 Java-ODL: Beispiel public class Author { private String firstname, lastname; public Author (String first, String last) { firstname = first; lastname = last; } public String getlastname () { return lastname; } } public String getfirstname () { return firstname; } VL Objektrelationale Datenbanken 4 22 Java-ODL: Beispiel /2 public class Book { private String isbn, title; private Category classifiedin; private ListOfObject writtenby; } public Buch (String isbn) { this.isbn = isbn; writtenby = new ListOfObject (); } VL Objektrelationale Datenbanken SQL:1999 SQL:1999 aktuelle Version des SQL-Standards der ISO u.a. Unterstützung objektrelationaler Konzepte Verbindung von Konzepten objektorientierter Datenbankmodelle mit SQL nutzerdefinierte Datentypen, Vererbung/Spezialisierung, Methoden bisher nur teilweise umgesetzt: IBM DB2, Oracle9i, PostgreSQL, (jeweils mit proprietären Varianten) VL Objektrelationale Datenbanken 4 24
9 SQL:1999: Neue Datentypen BLOB, CLOB: Datentypen für große Binär-/Zeichenkettenobjekte (binary/character large objects) Boolean: boolesche Werte TRUE, FALSE, UNKNOWN Array: Kollektionstyp für mehrwertige Attribute REF-Typen: zur eindeutigen Identifikation von Tupeln (OID) sowie zur Navigation über Pfadausdrücke ROW-Typen: Typkonstruktor für strukturierte Attribute nutzerdefinierte Datentypen: Konstruktion neuer Typen VL Objektrelationale Datenbanken 4 25 BLOB und CLOB Speicherung großer Zeichenketten/Binärfolgen Bilder, Audio-/Videodaten, XML-Dokumente, Angabe der max. Größe erforderlich Grenzen sind systemspezifisch Beispiel create table Professoren ( Foto blob(100k)); erfordern spezielle Behandlung beim Zugriff Einschränkungen: kein Primär-/Fremdschlüssel, keine Gruppierung/Sortierung VL Objektrelationale Datenbanken 4 26 Kollektionsdatentypen Datentypen zur Speicherung mehrerer Werte für ein Attribut array-typkonstruktor Elementdatentyp max. Kardinalität k Notation datentyp array[k] keine Schachtelung möglich! unterstützte Operationen: Indexzugriff (1 k), Länge VL Objektrelationale Datenbanken 4 27
10 Kollektionsdatentypen: Beispiel create table Bcher ( titel varchar(100), isbn varchar(10), preis decimal(5,2), abstract clob(10k), autoren varchar(20) array[5] ); VL Objektrelationale Datenbanken 4 28 Anonyme ROW-Typen Typkonstruktor für strukturierte Attribute anonym kein expliziter Typname Notation row (fname 1, ftyp 1,, fname n, ftyp n ) Beispiel: create table Kunden ( name varchar(50), adresse row (strasse varchar(30), plz char(5), ort varchar(30)) ); VL Objektrelationale Datenbanken 4 29 Nutzerdefinierte Datentypen (UDT) Definition abstrakter Datentypen Unterscheidung in Distinct-Typen: Definition eines Datentyps direkt als Umbenennung eines Basisdatentyps Strukturierte Typen: Typkonstruktor für benannte strukturierte Datentypen VL Objektrelationale Datenbanken 4 30
11 Distinct-Typen Umbennung existierender Typen zur Einführung von Typ-Inkompatibilitäten nur für Attribute, Parameter, Variablen Beispiel: create type meter as integer final; create type quadratmeter as integer final; kein Vergleich/Zuweisung von Attributen verschiedener Distinct-Typen create table Grundstck ( laenge meter, breite meter, flaeche quadratmeter); breite und flaeche sind inkompatibel VL Objektrelationale Datenbanken 4 31 Strukturierte Typen Typkonstruktor zur Definition abstrakter Datentyp verwendbar für Attribute, Parameter, Variablen, Tabellen Beispiele: create type Adresse as ( strasse varchar(30), plz char(5), ort varchar(30) ) not final create type Kunde as ( knr int, name varchar(30), lieferadresse Adresse ) not final VL Objektrelationale Datenbanken 4 32 Subtyping Definition von Untertypen als Erweiterung existierender Datentypen (UDTs) Notation: untertyp under supertyp keine Mehrfachvererbung zulässig bei Typdefinition not final: Subtyping zulässig final: keine Bildung von Untertypen Beispiel: create type Person as ( ) not final create type Kunde under Person as ( ) not final VL Objektrelationale Datenbanken 4 33
12 Strukturierte Typen: Methoden SQL-Funktionen/Prozeduren, die UDT zugeordnet sind Besonderheiten: impliziter SELF-Parameter (vergleichbar this in C++, Java) getrennte Spezifikation von Signatur und Implementierung automatisch generierte set/get-methoden für alle Attribute eines Typs VL Objektrelationale Datenbanken 4 34 Methoden: Beispiel create type Kunde as ( ) not final method gesamt_bestellsumme() returns decimal(9,2)) create method gesamt_bestellsumme() for Kunde begin end VL Objektrelationale Datenbanken 4 35 Strukturierte Typen für Tabellen Definition von Tabellen auf Basis strukturierter Typen Objektrelation Attribute werden Spalten zusätzliche Spalte für OID (benötigt für REF-Typen) Beispiel: create table Kunden of Kunde ( ref is oid user generated) Kunde ist Tabellentyp Adresse ist Spaltentyp VL Objektrelationale Datenbanken 4 36
13 Objektidentifikatoren Bildung von Objektidentifikatoren für Tupel in Objektrelationen (unveränderliche IDs) ref is user generated nutzerdefinierte/-vergebene OID ref is system generated systemgenerierte OID ref from (Attributliste) OID wird abgeleitet von anderen Attributen (z.b. Primärschlüssel) VL Objektrelationale Datenbanken 4 37 REF-Typ Typ für Referenzen auf Instanzen eines strukturierten Datentyps (Tupel einer Objektrelation) Notation: ref(strukturierter-typ) [ scope gltigkeitsbereich ] Gültigkeitsbereich: vorgegebene Tabelle alle Tabellen VL Objektrelationale Datenbanken 4 38 REF-Typ: Beispiel create type Person as ( personalnr integer, name varchar(30), vorgesetzter ref(person)) create table Angestellte of Person ( ) create table Abteilungen ( name varchar(10), leiter ref(person) scope(angestellte), mitarbeiter ref(person) scope(angestellte) array[10] ) VL Objektrelationale Datenbanken 4 39
14 Typisierte Sichten Sicht auf strukturierte Typen Unterschiede zu Tupelsichten Zeilen über OID-Spalte referenzierbar Methodenaufrufe möglich typisierte Sicht als Subsicht einer anderen typisierten Sicht definierbar typisierte Sicht ohne Supersicht: Wurzelsicht Definition: create view sichtname of typname [( oid-generierung, spalten-option )] as sicht-anfrage VL Objektrelationale Datenbanken 4 40 Typisierte Sichten: Definition OID-Generierung: ref is oid Spaltenoption: spalte with options scope tabelle Einschränkungen für Sichtanfrage: Typverträglichkeit mit Sichttyp bei benutzerdefinierter OID-Generierung: Aufruf des Referenzkonstruktors sichttyp-name(ref-wert) als erster Parameter der Projektionsliste from-klausel mit genau einer Tabelle/Sicht; bei typisierter Tabelle/Sicht nur mit flacher Extension (only) keine Verbund- oder Gruppierungsoperationen VL Objektrelationale Datenbanken 4 41 Typisierte Sichten: Beispiel create type Person as ( personalnr integer, name varchar(30), gehalt decimal(8,2), vorgesetzter ref(person)) not final ref using integer; create view ReicheMitarbeiter of Person ( ref is oid user generated, vorgesetzter with options scope ReicheMitarbeiter ) as select ReicheMitarbeiter(personalnr), personalnr, name, gehalt, ReicheMitarbeiter(vorgesetzter->personalnr) from only (Angestellte) where gehalt > 5000; VL Objektrelationale Datenbanken 4 42
15 Subsichten Sicht mit genau einer direkten Supersicht erbt OID-Spalte und Spaltenoptionen Tabelle der Sichtanfrage muss Subtabelle der Supersicht sein Extension der Subsicht ist Teilmenge der Extension der Supersicht Definition create view sichtname of typname under supersichtname [( spalten-optionen )] as sicht-anfrage VL Objektrelationale Datenbanken Objektrelationale Typen in Oracle9i Unterstützung objektrelationaler Konzepte in Oracle seit Version 8 Abweichungen vom SQL-Standard proprietäre Erweiterungen Methodenimplementierung in PL/SQL Konzepte: UDTs, REF, Kollektionen, Methoden, Subtyping VL Objektrelationale Datenbanken 4 44 Oracle: Typdefinition Definition von Datentypen für Attribute, Variablen und Tabellen (row objects) Notation: create type name as object ( ) VL Objektrelationale Datenbanken 4 45
16 Oracle: Objekttabellen Tabellen mit Objekten (Instanzen eines UDT) als Tupel Beispiel: create table Kunden of Kunde; Interpretation Tabelle mit einer Spalte von Objekten Tabelle mit (mehreren) Spalten, die Attributen des UDT entsprechen VL Objektrelationale Datenbanken 4 46 Oracle: Objekttabellen (II) Objektidentifikatoren object identifier is primary key: Nutzung des Primärschlüssels as OID object identifier is system generated: systemgenerierte OID VL Objektrelationale Datenbanken 4 47 Oracle: Kollektionen Repräsentation von mehrwertigen Attributen und 1:n-Beziehungen Typkonstruktoren varray: geordnete Menge von Elementen nested table: ungeordnete Menge ohne Größenbeschränkung VL Objektrelationale Datenbanken 4 48
17 Oracle: VARRAY geordnete Menge von Elementen über Index adressierbar max. Größe bei Definition spezifizieren Speicherung als Binärobjekt (BLOB) Beispiel: create type AutorenListe as varray(10) of varchar(50); create table Buecher ( autoren AutorenListe ); VL Objektrelationale Datenbanken 4 49 Oracle: Nested Tables ungeordnete Menge von Elementen ohne Größenbeschränkung Speicherung der Objekte in separater Tabelle intern: NESTED_TABLE_ID für Verweis von Elterntabelle auf nested table Beispiel: create type Person as object ( ); create type Angestellte as table of Person; create table Abteilungen ( name varchar(10), mitarbeiter Angestellte ) nested table mitarbeiter store as abt_mitarb_tbl; VL Objektrelationale Datenbanken 4 50 Oracle: REF-Typen Implementierung logischer Zeiger über OIDs Ersatz für Fremdschlüssel vereinfachte Navigation (Pfadausdrücke) Typkonstruktor address_ref ref address_type Angabe des Gültigkeitsbereichs scope is address_table VL Objektrelationale Datenbanken 4 51
18 Oracle: Methoden Funktionen/Prozeduren, die zu einem Objekttyp zugeordnet sind Implementierung in PL/SQL oder als externe Methoden (C, Java) self als impliziter Parameter impliziter Konstruktor zur Erzeugung von Objekten Beispiel: create type Kunde as object ( member function gesamt_bestellsumme() return number(9,2)) ); VL Objektrelationale Datenbanken 4 52 Oracle: Map- und Order-Methoden Spezifikation von Vergleichs- und Ordnungsfunktionen für Objekttypen Nutzung im Rahmen von Anfragen (Gruppierung, Sortierung) MAP-Funktionen: Vergleich durch Abbildung auf Basisdatentypen (date, varchar, number, ) create type Rechteck as object ( laenge integer, breite integer, map member function flaeche return integer ); VL Objektrelationale Datenbanken 4 53 Oracle: Map- und Order-Methoden /2 ORDER-Funktionen: direkte Vergleiche von Objekten create type Kunde as object ( order member function vergleiche (k Kunde) return integer ); VL Objektrelationale Datenbanken 4 54
19 Oracle: Subtyping Definition von Objekttypen durch Ableitung von vorhandenen Objekttypen Hinzufügen von Attributen und Methoden Überschreiben von Methoden final/not final Beispiel: create type Student under Person ( ); Typersetzbarkeit: Tabelle eines gegebenen Objekttyps kann auch Instanzen eines Subtyps aufnehmen VL Objektrelationale Datenbanken XML Schema: Überblick Datendefinition für XML (valide Dokumente): bisher nur DTD Grammatik zur Festlegung der zulässigen Elemente und deren Schachtelung schwache Typisierung, begrenzte Ausdrucksmöglichkeiten dokument-orientiert Alternative: XML Schema Definition einer Klasse von XML-Dokumenten (Dokumentinstanzen) Schemadefinitionssprache nicht auf Dokumente beschränkt (vgl. XML-DBS) weitergehende Modellierungsmöglichkeiten daten-orientiert VL Objektrelationale Datenbanken 4 56 XML Schema: Konzepte Namensraum (Präfix): xsd Schemaelement: bestehend aus Subelementen Elementen: element komplexen Typdefinitionen: complextype Komposition aus anderen Elementen und Attributen einfachen Typdefinitionen: simpletype Basistypen Einschränkung von Basistypen Kommentaren VL Objektrelationale Datenbanken 4 57
20 Beispieldokument <?xml version="1.0"?> <bestellung datum=" " > <lieferadresse land="d" > <name>institut fuer Informatik</name> <ort>halle/s.</ort> <strasse>von-seckendorff-platz 1</strasse> <plz>06120</plz> </lieferadresse> <positionen> <position prodnr="mon-123-a" > <prodname>17-zoll-tft Singsang</prodName> <menge>1</menge> <preis>599</preis> </position> </positionen> </bestellung> VL Objektrelationale Datenbanken 4 58 Schemadefinition <xsd:schema xmlns:xsd=" <xsd:element name=bestellung type="bestelltyp"/> <xsd:complextype name="bestelltyp"> <xsd:sequence> <xsd:element name="lieferadresse" type="adresstyp" /> <xsd:element name="positionen" type="positionentyp" /> </xsd:sequence> <xsd:attribute name="datum" type="xsd:date" /> </xsd:complextype> </xsd:schema> VL Objektrelationale Datenbanken 4 59 Deklaration von Elementen Definition von Elementen und Attributen, die im Dokument auftreten können typisierte Elemente und Attribute Notation: <xsd:element name="element-name" type="typ-name" /> weitere Attribute für xsd:element minoccurs/maxoccurs: Beschränkung der min. bzw. max. Häufigkeit des Auftretens des Elementes use: required, optional default: Default-Wert VL Objektrelationale Datenbanken 4 60
21 Einfache Typen Builtin-Typen: string, integer, double, date, anyuri, abgeleitete Typen durch Restriktion der Builtin-Typen erlauben keine Attribute Bereichseinschränkung Muster Aufzählung von Werten (enumeration) Listen (list), Vereinigung verschiedener Wertebereiche (union) VL Objektrelationale Datenbanken 4 61 Einfache Typen: Bereichseinschränkung Einschränkung des Wertebereichs (1 100) <xsd:simpletype name="mengentyp"> <xsd:restriction base="xsd:integer"> <xsd:mininclusive value="1" /> <xsd:maxinclusive value="100" /> </xsd:restriction> </xsd:simpletype> VL Objektrelationale Datenbanken 4 62 Einfache Typen: Muster Einschränkung des Wertebereichs durch Angabe eines Musters (regulärer Ausdruck) <xsd:simpletype name="prodnrtyp"> <xsd:restriction base="xsd:string"> <xsd:pattern value="[a-z]{3}-\d{3}-[a-z]{1}" /> </xsd:restriction> </xsd:simpletype> VL Objektrelationale Datenbanken 4 63
22 Komplexe Typen Typkonstruktor für Elemente mit Attributen und Subelementen Bildung komplexer Typen auf Basis einfacher Typen Mixed Content (Sequenz von Subelementen) Auswahl, Gruppierung VL Objektrelationale Datenbanken 4 64 Komplexe Typen: Beispiel Typdefinition <xsd:complextype name="intpreistyp"> <xsd:simplecontent> <xsd:extension base="xsd:decimal"> <xsd:attribute name="waehrung" type="xsd:string"/> </xsd:extension> </xsd:simplecontent> </xsd:complextype> Anwendung (Dokumentinstanz) <preis waehrung="euro">899</preis> VL Objektrelationale Datenbanken 4 65 Komplexe Typen: Beispiel /2 <xsd:complextype name="positionentyp"> <xsd:sequence> <xsd:element name="position" minoccurs="1" maxoccurs="unbounded"> <xsd:complextype> <xsd:sequence> <xsd:element name="prodname" type="xsd:string"/> <xsd:element name="menge" type="mengentyp"/> <xsd:element name="preis" type="xsd:decimal"/> </xsd:sequence> <xsd:attribute name="prodnr" type="prodnrtyp" use="required"/> </xsd:complextype> </xsd:element> </xsd:sequence> </xsd:complextype> VL Objektrelationale Datenbanken 4 66
Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL
Relationales Modell: SQLDDL SQL als Definitionssprache SQLDDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben Externe Ebene
Mehr7. Datenbankdefinitionssprachen
7. Datenbankdefinitionssprachen SQL-DDL Teil der Standardsprache für relationale Datenbanksysteme: SQL ODL (Object Definition Language) für objektorientierte Datenbanksysteme nach dem ODMG-Standard VL
MehrObjektrelationale Datenbanken
Vorlesung Datenbanksysteme vom 26.11.2008 Objektrelationale Datenbanken Konzepte objektrelationaler DBs SQL:1999 OO vs. OR Konzepte objektrelationaler Datenbanken Große Objekte (LOBs: Large Objects) Mengenwertige
MehrEinleitung create table Integritätsbed. alter/ drop table Index ODL. Einleitung. create table. alter/ drop table Index ODL. Einleitung.
Thema dieser Vorlesung (im wesentlichen): Relationale Datenbanken zugrundeliegende Struktur sind Relationen. Es gibt auch andere Arten von Datenbanken, z. B. objektorientierte Datenbanken. Objekte anstelle
Mehr6. Datenbankdefinitionssprachen. Relationales Modell: SQL-DDL. Anforderungen an eine relationale DDL. SQL als Definitionssprache
6. Datenbankdefinitionssprachen Relationales Modell: SQL-DDL SQL-DDL Teil der Standardsprache für relationale Datenbanksysteme: SQL ODL (Object Definition Language) für objektorientierte Datenbanksysteme
MehrInformations- und Wissensmanagement
Informations- und Wissensmanagement Kapitel 2: Datenbankdefinitionssprachen IPD, Forschungsbereich Systeme der Informationsverwaltung Datenbank-Technologie Vielfalt Thema dieser Vorlesung (im wesentlichen):
MehrObjektrelationale und erweiterbare Datenbanksysteme
Objektrelationale und erweiterbare Datenbanksysteme Erweiterbarkeit SQL:1999 (Objekt-relationale Modellierung) In der Vorlesung werden nur die Folien 1-12 behandelt. Kapitel 14 1 Konzepte objekt-relationaler
MehrÜbung Datenbanken in der Praxis. Datenmodifikation mit SQL
Datenmodifikation mit SQL Folie 45 SQL - Datenmodifikation Einfügen INSERT INTO Relation [(Attribut, Attribut,...)] VALUES (Wert, Wert,...) INSERT INTO Relation [(Attribut, Attribut,...)] SFW-Anfrage Ändern
MehrSQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar
Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-
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
MehrModul Datenbanksysteme 2 Prüfung skizzenhaft SS Aug. 2007. Name: Note:
1 Modul Datenbanksysteme 2 Prüfung skizzenhaft SS Aug. 2007 Name: Note: Nr. Aufgaben Max. Punkte Erreichte Punkte 1 Grundlagen ~ 10% Vgl. Hinweis unten 2 Integrität, Procedures, Triggers, Sichten ~ 20%
MehrDATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER
DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.
MehrSQL (Structured Query Language) Schemata Datentypen
2 SQL Sprachelemente Grundlegende Sprachelemente von SQL. 2.1 Übersicht Themen des Kapitels SQL Sprachelemente Themen des Kapitels SQL (Structured Query Language) Schemata Datentypen Im Kapitel SQL Sprachelemente
Mehr3. Das Relationale Datenmodell
3. Das Relationale Datenmodell Das Relationale Datenmodell geht zurück auf Codd (1970): E. F. Codd: A Relational Model of Data for Large Shared Data Banks. Comm. of the ACM 13(6): 377-387(1970) DBMS wie
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
Mehr5. Objekt-relationale Systeme 5.1. Erweiterungen des Relationalen Modells 5.2. SQL-Erweiterungen 5.3. MM-DB
5. Objekt-relationale Systeme 5.1. Erweiterungen des Relationalen Modells 5.2. SQL-Erweiterungen 5.3. MM-DB Beschränkungen des Relationalen Modells NF1: Atomare Attribute nicht erweiterbares Typkonzept
MehrSQL objektorientiert
Dušan Petković SQL objektorientiert An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam Vorwort 11 Teil 1: Einführung 15
MehrNachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)
Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der
MehrKapitel DB:VI (Fortsetzung)
Kapitel DB:VI (Fortsetzung) VI. Die relationale Datenbanksprache SQL Einführung SQL als Datenanfragesprache SQL als Datendefinitionssprache SQL als Datenmanipulationssprache Sichten SQL vom Programm aus
MehrObjekt-relationales Datenbanksystem Oracle
Objekt-relationales Datenbanksystem Oracle 1 Benutzerdefinierte Datentypen 1.1 Unvollständige Typen create-incomplete-type OR 1.2 Kollektionstypen REPLACE TYPE type-name create-varray-type OR TYPE type-name
MehrUni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr
Raum: LF 230 Bearbeitung: 9.-11. Mai 2005 Datum Gruppe Vorbereitung Präsenz Aktuelle Informationen unter: http://www.is.informatik.uni-duisburg.de/courses/dbp_ss03/ Tabellen in IBM DB2 Tabellen Eine relationale
MehrClient-Server-Beziehungen
Client-Server-Beziehungen Server bietet Dienste an, Client nutzt Dienste Objekt ist gleichzeitig Client und Server Vertrag zwischen Client und Server: Client erfüllt Vorbedingungen eines Dienstes Server
MehrDatenmanagement in Android-Apps. 16. Mai 2013
Datenmanagement in Android-Apps 16. Mai 2013 Überblick Strukturierung von datenorientierten Android-Apps Schichtenarchitektur Möglichkeiten der Datenhaltung: in Dateien, die auf der SDCard liegen in einer
MehrVerhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...
PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:
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
Mehr3 Objektorientierte Konzepte in Java
3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine
MehrOracle: Abstrakte Datentypen:
Oracle: Abstrakte Datentypen: Oracle bietet zwei mögliche Arten um abstrakte Datentypen zu implementieren: Varying Array Nested Table Varying Array (kunde) kdnr kdname gekaufteart 1 Mustermann 1 4 5 8
MehrStrukturierte Objekttypen
Strukturierte Objekttypen Der Typ t approxmatch row des letzten Beispiels ist ein sogenannter Objekttyp. Definition: Ein Objekttyp ist ein Datentyp, bei dem (u.u. verschiedene) bekannte Datentypen zu einem
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
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:
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:
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
MehrJava Kurs für Anfänger Einheit 4 Klassen und Objekte
Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse
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
MehrKapitel 3: Datenbanksysteme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Kapitel 3: Datenbanksysteme Vorlesung:
MehrXML-Namensräume. Marc Monecke monecke@informatik.uni-siegen.de
XML-Namensräume Marc Monecke monecke@informatik.uni-siegen.de Praktische Informatik Fachbereich Elektrotechnik und Informatik Universität Siegen, D-57068 Siegen 19. Mai 2003 Inhaltsverzeichnis 1 Motivation
MehrVorlesung. Grundlagen betrieblicher Informationssysteme. Prof. Dr. Hans Czap. Email: Hans.Czap@uni-trier.de. Lehrstuhl für Wirtschaftsinformatik I
Vorlesung Grundlagen betrieblicher Informationssysteme Prof. Dr. Hans Czap Email: Hans.Czap@uni-trier.de - II - 1 - Inhalt Kap. 1 Ziele der Datenbanktheorie Kap. 2 Datenmodellierung und Datenbankentwurf
MehrComputeranwendung und Programmierung (CuP)
Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag
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
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!
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
MehrÜbung 1 mit C# 6.0 MATTHIAS RONCORONI
Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,
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
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!
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
MehrObjektorientierte Programmierung. Kapitel 12: Interfaces
12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/
MehrProzedurale Datenbank- Anwendungsprogrammierung
Idee: Erweiterung von SQL um Komponenten von prozeduralen Sprachen (Sequenz, bedingte Ausführung, Schleife) Bezeichnung: Prozedurale SQL-Erweiterung. In Oracle: PL/SQL, in Microsoft SQL Server: T-SQL.
MehrJavadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck
Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle
MehrProgrammieren Tutorium
Programmieren Tutorium Tom Schildhauer Tutorium 12 Universität Karlsruhe (TH) Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by Tom Schildhauer,
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
MehrProgrammieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek
Programmieren I Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2008/2009 1 / 22 2 / 22 Strategie zum Entwurf von Klassen Beispiele Objektorientierte Sichtweise: Mit welchen Objekten habe ich es
MehrSQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software
SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4
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
MehrEine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.
Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,
MehrVorlesung "Software-Engineering"
Vorlesung "Software-Engineering" Rainer Marrone, TUHH, Arbeitsbereich STS Vorige Vorlesung Pflichtenheft (requirements specification document) Charakterisierung von Software-Qualität Detaillierte Anforderungsanalyse
MehrSQL und MySQL. Kristian Köhntopp
SQL und MySQL Kristian Köhntopp Wieso SQL? Datenbanken seit den frühen 1950er Jahren: Hierarchische Datenbanken Netzwerkdatenbanken Relationale Datenbanken = SQL Relational? 10 9 8 7 6 f(y) := y = x r(y)
MehrXML Schema vs. Relax NG
XML Schema vs. Relax NG p. 1/2 XML Schema vs. Relax NG Semistrukturierten Daten 1 Präsentation der Gruppe 2 XML Schema vs. Relax NG p. 2/2 Wozu XML Schema? W3C Empfehlung zur Definition von XML-Dokumentstrukturen
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
MehrRelationale Datenbanken in der Praxis
Seite 1 Relationale Datenbanken in der Praxis Inhaltsverzeichnis 1 Datenbank-Design...2 1.1 Entwurf...2 1.2 Beschreibung der Realität...2 1.3 Enitiy-Relationship-Modell (ERM)...3 1.4 Schlüssel...4 1.5
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
MehrJava Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7
Java Einführung Umsetzung von Beziehungen zwischen Klassen Kapitel 7 Inhalt Wiederholung: Klassendiagramm in UML Java-Umsetzung von Generalisierung Komposition Assoziationen 2 Das Klassendiagramm Zweck
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrObjektrelationale, erweiterbare Datenbanken WS 04/05
Eidgenössische Technische Hochschule Zürich Swiss Federal Institute of Technology Zurich Institut für Informationssysteme Dr.C.Türker Objektrelationale, erweiterbare Datenbanken WS 0405 Übung 8 Aufgabe
MehrPrinzipien Objektorientierter Programmierung
Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................
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,
MehrPhilipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung
Einführung in Datenbanken - Objekt-Orientierte Datenbanken - Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung 1 Probleme mit dem relationalen Modell Das Typsystem des relationalen Modells
Mehr7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2
5 Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn 7 7. Datenbank-Zugriff Zum Beispiel aus PHP-Skripten: Client 7-2 Struktur einer Datenbank 7-3 Erzeugen von Datenbanken
MehrArrays Fortgeschrittene Verwendung
Arrays Fortgeschrittene Verwendung Gilbert Beyer und Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Arrays: Wiederholung
MehrGrundlagen von Python
Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren
MehrModul 122 VBA Scribt.docx
Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval
MehrKlausur Interoperabilität
Klausur 21. Juni 2012 9.30 11.00 Uhr Workflow Systems and Technology Group Fakultät für Informatik Universität Wien Univ.-Prof. Dr. Stefanie Rinderle-Ma Allgemeine Hinweise: Die Bearbeitungszeit beträgt
MehrHochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.
Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Datenbanken und Informationssysteme II Szenario: Projektverwaltung. Es gibt Projekte, Projektleiter, Mitarbeiter und ihre Zuordnung zu Projekten.
Mehr7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure
7. Objektorientierte Softwareentwicklung/3 Informatik II für Verkehrsingenieure Überblick FOLGENDE BEGRIFFE/PRINZIPIEN SOLLTEN BEKANNT SEIN Objekte Klasse Attribute Fähigkeiten ZIEL DER HEUTIGEN LEHRVERANSTALTUNG
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
MehrKapitel 6. Vererbung
Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen
Mehr4. Objektrelationales Typsystem
4. Objektrelationales Typsystem Inhalt und Lernziele 4. Objektrelationales Typsystem Inhalt (u.a.): Basisdatentypen Einzigartige Typen (Distinct Types) Kollektionstypen Strukturierte Typen Benutzerdefinierte
MehrKapitel 6. Vererbung
1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben
MehrDatenbanken. Sommersemester 2010 Probeklausur
Prof. Dr. V. Linnemann Christoph Reinke Universität zu Lübeck Institut für Informationssysteme Lübeck, den 29. Juli 2010 Datenbanken Sommersemester 2010 Probeklausur Hinweise: Es ist sinnvoll, die Aufgaben
MehrDatenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs])
Datenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs]) Hochschule für Technik, Wirtschaft und Kultur Leipzig 06.06.2008 Datenbanken II,Speicherung und Verarbeitung großer Objekte
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
MehrArrays von Objekten. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-12-13/infoeinf WS12/13 Arrays: Wiederholung Ein Array ist ein Tupel von Elementen gleichen
MehrObjektorientierte PL/SQL- Programmierung
Objektorientierte PL/SQL- Programmierung Autoren: Andriy Terletskyy und Michael Meyer DOAGNews Q3_2004 Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbesondere die der Übersetzung,
MehrKlaus Schild, XML Clearinghouse 2003. Namensräume
Namensräume Lernziele Namenskonflikte Warum lösen im World Wide Web einfache Präfixe dieses Problem nicht? Wie lösen globale Namensräume das Problem? Wie werden sie in XML-Dokumenten benutzt? Was sind
Mehr4. Datenbanksprache SQL
4. Datenbanksprache SQL Standard-Sprache für das Arbeiten mit relationalen Datenbanken: Structured Query Language Datendefinition: Anlegen, Ändern und Löschen von Datenbankstrukturen Datenmanipulation:
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
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
MehrAssoziation und Aggregation
Assoziation und Aggregation Martin Wirsing in Zusammenarbeit mit Matthias Hölzl, Nora Koch 05/03 2 Ziele Verstehen der Begriffe Assoziation und Aggregation Implementierung von Assoziationen in Java schreiben
MehrProgrammieren in Java
Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können
MehrKommunikation und Datenhaltung
Kommunikation und Datenhaltung Sprachen zur Datenbankdefinition Überblick über den Datenhaltungsteil Motivation und Grundlagen Architektur von Datenbanksystemen Datenbankanfragen Relationenmodell und Relationenalgebra
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
MehrArbeiten mit einem lokalen PostgreSQL-Server
Arbeiten mit einem lokalen PostgreSQL-Server Download für das Betriebssystem Windows PostgreSQL-Server und pgadmin: http://www.enterprisedb.com/products-servicestraining/pgdownload#windows pgadmin: http://www.pgadmin.org/download/windows.php
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
MehrSoftware-Engineering Einführung
Software-Engineering Einführung 7. Übung (04.12.2014) Dr. Gergely Varró, gergely.varro@es.tu-darmstadt.de Erhan Leblebici, erhan.leblebici@es.tu-darmstadt.de Tel.+49 6151 16 4388 ES Real-Time Systems Lab
MehrKapitel 6. Vererbung
1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben
MehrGrundzüge und Vorteile von XML-Datenbanken am Beispiel der Oracle XML DB
Grundzüge und Vorteile von XML-Datenbanken am Beispiel der Oracle XML DB Jörg Liedtke, Oracle Consulting Vortrag zum Praxis-Seminar B bei der KIS-Fachtagung 2007, Ludwigshafen Agenda
MehrKlausur zur Einführung in die objektorientierte Programmierung mit Java
Klausur zur Einführung in die objektorientierte Programmierung mit Java im Studiengang Informationswissenschaft Prof. Dr. Christian Wolff Professur für Medieninformatik Institut für Medien-, Informations-
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
MehrArrays von Objekten. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"
MehrKlausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.
Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert
MehrObjektorientierung in Oracle
Seminarunterlage Version: 11.10 Version 11.10 vom 12. September 2013 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen
Mehr