Herbstsemester CS241 Datenbanken / CS261 Web Data Management Kapitel DB-1: Einführung. H. Schuldt. Warum Datenbanken?

Größe: px
Ab Seite anzeigen:

Download "Herbstsemester 2011. CS241 Datenbanken / CS261 Web Data Management Kapitel DB-1: Einführung. H. Schuldt. Warum Datenbanken?"

Transkript

1 Herbstsemester 2011 CS241 Datenbanken / CS261 Web Data Management Kapitel DB-1: Einführung H. Schuldt Warum Datenbanken? Aus Statistiken der amerikanischen Library of Congress geht hervor, dass sich die Information, die in Büchern verfügbar ist, etwa alle fünf Jahre verdoppelt. Durch die starke Verbreitung von (Software- und Hardware-) Sensoren, mobilen Geräten, etc. in denen kontinuierlich Daten erzeugt werden, unterliegt digitale Information einem noch viel grösseren und rascheren Wachstum Das betrifft in zunehmendem Masse auch Daten, die über das Internet zugängich gemacht werden (z.b. Web-Shops, Produktkataloge, etc.) Eine wichtige Aufgabe ist es daher, diese Informationsflut zu bewältigen. Dazu gehört: Speicherung und Verwaltung von Daten Optimierter Zugriff auf diese Daten mit möglichst mächtiger (und intuitiver, das heisst deklarativer) Schnittstelle Korrektheit auch bei parallelem Zugriff (Änderungen, Lesen) auf Daten DB-1-2 1

2 Dauerhafte (persistente) Speicherung Beim Erstellen eines Programms wird in der Regel nur der Arbeitsspeicher zur Datenverwaltung benutzt, d.h., Objekte werden im Arbeitsspeicher erzeugt und nach dem Programmlauf wieder entfernt Das ist nicht ausreichend Viele Anwendungen müssen Daten dauerhaft (persistent) speichern, d.h. Daten müssen auch Systemabstürze oder Programmläufe überstehen. Der Arbeitsspeicher ist häufig nicht gross genug, um alle zu verwaltenden Daten aufzunehmen (z.b. alle Kundendaten einer Bank, Patientendaten einer Klinik, Gensequenzdaten eines Life Science-Labors) DB-1-3 Dauerhafte (persistente) Speicherung Der Externspeicher (Festplatten) eines Rechners bietet bereits die Möglichkeit der permanenten Speicherung Arbeitsspeicher: rein elektronisch (Transistoren und Kondensatoren) flüchtig schnell: 8 ns/zugriff wahlfreier Zugriff teuer: < 50 CHF für 2 GByte Externspeicher: Speicherung auf magnetisierbaren Platten (rotierend) nicht flüchtig langsam: 5-10 ms/zugriff blockweiser Zugriff wesentlich billiger: < 100 CHF für GByte. DB-1-4 2

3 Aufbau einer Festplatte Mehrere magnetisierbare Platten rotieren (z.b. mit Umdrehungen pro Minute) um eine gemeinsame Achse Ein Kamm mit je zwei Schreib-/Leseköpfen pro Platte (unten/oben) bewegt sich in radialer Richtung. DB-1-5 Einteilung der Plattenoberflächen Pro Platte gibt es mehrere Spuren (kreisförmige Anordnung von Bits) Pro Spur gibt es mehrere Sektoren Spuren Sektoren (interne) Adressierung einer Information: [Platten-Nr Oberflächen-Nr Spur-Nr Sektor-Nr Byte-Nr] Berechnung der Kapazität: # Platten * 2 * # Spuren * # Sektoren * Bytes pro Sektor DB-1-6 3

4 Lesen/Schreiben eines Sektors Welche Aktivitäten werden zum Lesen/Schreiben von Daten von/auf Festplatte benötigt? 1. Positionieren des Kamms mit den Schreib-/Leseköpfen auf der Spur 2. Warten bis die Platte so weit rotiert ist, dass der Beginn des richtigen Sektors unter dem Schreib-/Lesekopf liegt 3. Übertragung der Information von der Platte in den Arbeitsspeicher (bzw. umgekehrt) Aber: Es ist nicht sinnvoll (und ist darüber hinaus technisch unmöglich), einzelne Bytes zu lesen bzw. zu schreiben. Vielmehr muss mindestens ein ganzer Sektor gelesen / geschrieben werden. DB-1-7 Speicherung in Dateien Die Adressierung von Daten (Bytes) mit Angabe von Platten-Nummer, Oberflächen-Nummer usw. ist für den Benutzer nicht sichtbar bzw. soll für diesen transparent gehalten werden Arbeit mit Dateien erleichtert das Speichern / Lesen von Daten: Dateinamen erleichtern die Adressierung Verzeichnishierarchien ermöglichen die Gruppierung von Dateien Die Speicherzellen einer Datei sind byteweise von 0 aufsteigend durchnummeriert Die Ein-/Ausgabe in Dateien wird gepuffert, damit nicht der Programmierer verantwortlich ist, immer ganze Sektoren zu schreiben/lesen. DB-1-8 4

5 Beispiel: Dateizugriff in Java public static void main (String[] args) { try { Datei-Handle RandomAccessFile f1 = new RandomAccessFile("test.file","rw"); Datei öffnen int c = f1.read() ; ein Byte lesen long new_position =... ; f1.seek (new_position) ; auf neue Position f1.write (c) ; ein Byte schreiben f1.close () ; Datei schliessen } catch (IOException e) { Fehlerbehandlung System.out.println ("Fehler: " + e) ; } } DB-1-9 Beispiel: Dateizugriff in Java In Java existieren zahlreiche unterschiedliche Klassen und Methoden zur Ein-/Ausgabe in Dateien Werden die Objekte einer Applikation in eine Datei geschrieben, ist das Dateiformat vom Programmierer festzulegen: Name (10 Zeichen) F e d e r e r Vorname (8 Z.) R o g e r Jahr (4 Z.) Dieses Dateischema wird durch den Quelltext nicht explizit beschrieben sondern implizit in den Ein-/Auslese-Prozeduren der Datei DB

6 Konsequenzen Oftmals ist aber eine Änderung des Dateiformates nötig (z.b. zusätzliche Objektattribute in einer neuen Programmversion): Dann können alte Datendateien nicht mehr verwendet werden oder müssen z.b. durch eigens dafür entwickelte Programme konvertiert werden (damit sie dem neuen Dateiformat genügen) Diese Änderung muss in allen Programmen nachgeführt werden, die mit den Daten arbeiten, auch in solchen, die logisch von Änderung gar nicht betroffen sind. T Dies führt zu einer logischen Datenabhängigkeit DB-1-11 Physische Datenabhängigkeit Meist werden die Datensätze anhand ihrer Position adressiert/separiert: z.b. es ist bekannt, dass jeder Satz 22 Zeichen umfasst 1. Satz: Adresse 0 2. Satz: Adresse 22, usw. Die Suche gemäss bestimmter Attributwerte (z.b. dem Namen des Kunden) muss im Programm codiert werden Soll die Datei z.b. mit einem Suchbaum unterstützt werden, dann hat dies die gleichen Konsequenzen wie bei logischer Änderung DB

7 Informationssysteme Bei Informationssystemen handelt es sich um grosse Software-Systeme, die aus vielen einzelnen Programmen bestehen Diese Programme arbeiten teils mit gemeinsamen Daten, teils mit unterschiedlichen Beispiele für die Programme: Buchhaltung: Artikel- und Adressinformation Lagerverwaltung: Artikel und Aufträge Auftragsverwaltung: Aufträge, Artikel, Adressen CAD-System: Artikel, technische Daten, Bausteine Produktion, Bestelleingang, Kalkulation:... Patientenverwaltung: Adressen, Behandlungen, etc. Lagerverwaltung: Artikel und Aufträge Ressourcenverwaltung: Räume, Geräte, Personal Buchhaltung: Artikel- und Adressinformation DB-1-13 Redundanz Die Verwendung von Dateien impliziert, dass Daten meist mehrfach (in separaten Dateien) gespeichert werden Buchhaltung Lagerverwaltung Auftragsverwaltung Artikel Adressen Artikel Aufträge Aufträge Artikel Adressen Konsequenz: Redundanz: dieselbe Information ist mehrfach an verschiedenen Stellen vorhanden Änderungs-Anomalien: Bei Änderung einer Adresse müssen viele Dateien nach den Einträgen durchsucht werden Inkonsistenz: wenn beim Ändern nicht alle Kopien ebenfalls geändert werden, dann wird das System schnell inkonsistent, d.h. enthält widersprüchliche Daten DB

8 Schnittstellenproblematik Alternative Implementierung: Zugriff auf mehrere Dateien aus einer Anwendung Applikation 1 Datei 1 Applikation 2 Datei 2 Applikation 3 Datei 3 Nachteile: diese Alternative ist sehr unübersichtlich, vor allem dann wenn die Daten in den einzelnen Dateien unterschiedlich strukturiert sind bei logischen oder physischen Änderungen des Dateischemas müssen viele Programme angepasst werden DB-1-15 Weitere Probleme von Dateien In grossen Informationssystemen arbeiten viele Benutzer gleichzeitig mit den Daten Dateisysteme bieten zu wenige Möglichkeiten, diese Zugriffe zu synchronisieren Benutzer, die gleichzeitig auf denselben Daten arbeiten dürfen keine Inkonsistenzen in den Datenbestand einfügen Dateisysteme schützen nicht in ausreichendem Mass vor Datenverlust im Fall von Systemabstürzen und Defekten Ausfälle des Systems aber auch Fehler in den Anwendungsprogrammen müssen entsprechend behoben werden Dateisysteme bieten nur unflexible Zugriffskontrolle (Datenschutz) Wenn Benutzer nur Teile der Daten in einer Datei sehen dürfen, dann lässt sich das nur sehr schwer sicherstellen Ebenfalls ist es sehr kompliziert, die Integrität der Daten (werden bestimmte Regeln eingehalten) sicherzustellen DB

9 Von Dateien zu Datenbanken Um diese Probleme mit einheitlichem Konzept zu behandeln, setzt man Datenbanken ein: Mit Dateisystem: Mit Datenbanksystem: Anwendung 1 Anwendung 2 Anwendung 1 Anwendung 2 Datei 1 Datei 2 Datei 3 Datenbanksystem DB-1-17 Komponenten Man unterscheidet zwischen... DB-Anwendungen (kommunizieren mit DBMS) Anw 1 Anw 2 DBS: Datenbanksystem (DB + DBMS) DBMS DBMS: Datenbank- Management-System (Software zur Verwaltung) DB: Datenbank (eigentliche Datensammlung) DB DB

10 Beispiele für Datenbanken/Informationssysteme IS eines Web-Shops Daten: Benutzer, Produktkataloge, Bestellungen, Lagerbestand, Anwendungen: Abfrage Verfügbarkeit, Bestellung, Statusinformation abfragen, Krankenhaus-IS Daten: Patientendaten (> stationäre Patienten pro Jahr), Labordaten, Arzneikataloge, Berichte über Krankheitsgeschichten und Therapien, Radiologische Untersuchungen: Röntgenbilder, Tomographien,... (> Untersuchungen pro Jahr, jeweils > 10 MBytes),... Anwendungen: Abrechnung der Kosten, "Buchführung" über Laborresultate, Diagnosen und Therapien, Archivierung, Statistische Analysen (z.b. zur Krebsforschung u.ä.), Unterstützung bei Diagnosen,... IS einer Bank Daten: Kunden, Konten, Devisen, Wertschriften, Kredite, Hypotheken,... Anwendungen: Buchhaltung, Zahlungsverkehr (> pro Tag), Anlageberatung, Kreditprüfung, Risikomanagement,... DB-1-19 Weitere Beispiele für DB/IS... IS einer Fluggesellschaft Daten: Flüge (> pro Tag), Passagiere, Reservationen und Buchungen (> 5 Mio. pro Jahr), Gepäckstücke, Flugzeuge (> 1 000), Flugpersonal,... Anwendungen: Reservationen und Buchungen (von > Terminals, bis zu 20 pro Sekunde), Check-In, Gepäckzustellung, Einsatzplanung, Flugplanoptimierung,... IS eines Postdienstes Daten: Kunden, Pakete, Briefe, Transportwege, Verteilerzentralen,... (> 2 Terabytes) Anwendungen: Auftragserfassung und -abrechnung, Kundennachfragen,... CIM (Computer-Integrated Manufacturing) Daten: Teilesortiment (> z.b. in der Autoindustrie), Lagervorrat, Stücklisten, Aufträge, Maschinen, Werkstückgeometrie, Werkstoffe, Fertigungstoleranzen,... Anwendungen: Lagerverwaltung, Auftragsverwaltung, CAD (Computer-Aided Design): Konstruktion von Teilen, CAM (Computer-Aided Manufacturing): Steuerung des Fertigungsprozesses, PPS (Produktionsplanung und -steuerung): Optimierung von Maschinenauslastungen, Rüstzeiten, Materialfluss, Lagerhaltungskosten,... DB

11 Weitere Beispiele für DB/IS... Bibliotheks-IS Daten: Dokumente: Bücher, Zeitschriftenbände, Forschungsberichte, Mikrofichen, Videos (z.t. > 20 Mio. Dokumente), Titel, Autoren, Kategorien, Deskriptoren, Abstracts,... Anwendungen: Recherchen nach relevanter Literatur (z.t. bis zu 100 pro Sekunde) Informationssuche Daten: Rechtsfälle, Patentdaten, Wirtschaftsnachrichten, chemische Verbindungen (> 10 Mio. niedermolekulare organische Verbindungen),... Anwendungen: Recherchen nach relevanter Information (> 100 pro Minute) Genforschung Daten: DNS-Sequenzen (> 1 Mio. Nukleotide bei einfachen Bakterien) Anwendungen: Suche nach ähnlichen DNS-Sequenzen Finanz-IS Daten: Finanzinstrumente: Aktien, Obligationen, Optionen,... (> Titel), Gesellschaften, Börsen (ca. 100), Kurse (> 100 pro Sekunde) Anwendungen: Anfragen und "Alarmierung" von Händlern Fahrplanauskunft Daten: Züge, Bahnhöfe, Postautos, Haltestellen, Kursbuch, Tarife,... Anwendungen: Reiseberatung DB-1-21 Weitere Beispiele für DB/IS Universitäts-IS Daten: Abteilungen, Studenten, Prüfungen, Vorlesungen, Hörsäle, Dozenten,... Anwendungen: Erstellung der Prüfungspläne und Prüfungserfassung, Statistiken, Erstellung der Stundenpläne und der Hörsaalbelegung,... Geographische IS / Umwelt-IS Daten: Topographische Karten, Verwaltungskarten (Kantone, Gemeinden,...), Messdaten über Luft-/Wasser-/Bodenverschmutzung, Wetterdaten, Flächennutzungsdaten, Demographische Daten,... Anwendungen: Produktion thematischer Karten, Grundstückskataster, Städteplanung, Analyse von Umweltschäden,... "Global Change Research" Daten: Topographische Karten, Satellitendaten (NASA Earth Observation System: 1 Terabyte pro Tag, > 5 Petabytes in 15 Jahren) Anwendungen: Analysen von Klimaveränderungen (Treibhauseffekt, Austrocknung von Seen u.ä.), Analyse und Vorhersage der Auswirkungen von Umweltkatastrophen, Visualisierung der Daten,... Verkehrs-IS Daten: Strassenkarten, zusätzliche Daten über Gelände und Bauwerke, Verkehrsaufkommen, Wetter und Strassensituation,... Anwendungen: Stauprognosen, Verkehrsplanung, etc. DB

12 Aufgaben eines DBS Primäre Aufgabe eines DBS ist... Beschreibung Speicherung und Pflege und die Wiedergewinnung umfangreicher Datenmengen, die von verschiedenen Anwendungsprogammen dauerhaft (persistent) genutzt werden DB-1-23 Anforderungen an ein DBS Liste von 9 Anforderungen (Edgar F. Codd, 1982) Integration: Einheitliche Verwaltung aller von Anwendungen benötigten Daten. Redundanzfreie Datenhaltung des gesamten Datenbestandes Operationen: Operationen zur Speicherung, zur Recherche und zur Manipulation der Daten müssen vorhanden sein Data Dictionary: Ein Katalog erlaubt Zugriffe auf die Beschreibung der Daten Benutzersichten: Für unterschiedliche Anwendungen unterschiedliche Sicht auf den Bestand Konsistenzüberwachung: Das DBMS überwacht die Korrektheit der Daten bei Änderungen DB

13 Anforderungen an ein DBS Zugriffskontrolle: Ausschluss unautorisierter Zugriffe Transaktionen: Zusammenfassung einer Folge von Änderungsoperationen zu einer Einheit, deren Effekt bei Erfolg permanent in DB gespeichert wird Synchronisation: Arbeiten mehrere Benutzer gleichzeitig mit der Datenbank dann vermeidet das DBMS unbeabsichtigte gegenseitige Beeinflussungen Datensicherung: Nach Systemfehlern (d.h. Absturz) oder Medienfehlern (defekte Festplatte) wird die Wiederherstellung ermöglicht (im Gegensatz zu Datei-Backup Rekonstruktion des Zustands der letzten erfolgreichen Transaktion) DB-1-25 Inhalte von Datenbanken Man unterscheidet zwei Ebenen: Intensionale Ebene: Datenbankschema beschreibt möglichen Inhalt der DB Struktur- und Typinformation der Daten (Metadaten) Art der Beschreibung vorgegeben durch Datenmodell Änderungen möglich, aber selten (Schema-Evolution) Extensionale Ebene: Ausprägung der DB tatsächlicher Inhalt der Datenbank (DB-Zustand) Objektinformation, Attributwerte Struktur vorgegeben durch Datenbankschema Änderungen häufig (Flugbuchung: TA/min) DB

14 Einfaches Beispiel: Schema: Inhalte von Datenbanken Name (10 Zeichen) Vorname (8 Z.) Jahr (4 Z.) DB-Zustand: F e d e r e r R o g e r S c h n y d e r P a t t y Es wird nicht nur der Datenbank-Zustand, sondern auch Datenbank-Schema in der Datenbank gespeichert. Ein wesentlicher Vorteil ist die Sicherstellung der Korrektheit der Datenbank DB-1-27 Schema in Datenbanken Das Schema ist explizit modelliert (in Form eines Textdokument, grafisch, ) in der Datenbank abgespeichert Benutzer können Schema-Informationen auch aus der Datenbank ermitteln Mit Hilfe des so genannten Data Dictionary (Metadaten) Das DBMS überwacht (und erzwingt) die Übereinstimmung zwischen DB-Schema und DB-Zustand Die Änderung des Schemas wird durch das DBMS unterstützt (Schema-Evolution, Migration) DB

15 Schema in Dateien In Dateien existiert kein Zwang, das Schema explizit zu modellieren Das Schema ist implizit in den Prozeduren zum Ein-/Auslesen enthalten Schema gehört zur Programm-Dokumentation oder es muss aus Programmcode herausgelesen werden. Fehler in den Ein-/Auslese-Prozeduren können dazu führen, dass der gesamte Datenbestand unbrauchbar wird: F e d e r e r R o g e r S c h n y d e r P a t t y Bei Schema-Änderungen müssen explizit Migrations-Prozeduren programmiert werden, um bestehende Dateien auf das neue Format umzustellen DB-1-29 Datenmodelle Datenmodelle sind Formalismen zur Beschreibung des DB-Schemas. Sie umfassen: Objekte der Datenbank Beziehungen zwischen verschiedenen Objekten Integritätsbedingungen Verschiedene Datenmodelle unterscheiden sich in der Art und Weise, wie Objekte und Beziehungen dargestellt werden Beispiele: Hierarchisch: Baum Relational: Tabellen Firma Abteilung 1 Abteilung 2 Mitarbeiter Abteilungen Mitarb 1 Mitarb 2 Mitarb 3 DB

16 Datenmodelle Weitere Unterschiede zwischen Datenmodellen bestehen in: angebotenen Operationen (insbesondere zur Recherche) Integritätsbedingungen Die wichtigsten Datenmodelle sind: Hierarchisches Datenmodell Netzwerk-Datenmodell Relationales Datenmodell Objektorientiertes Datenmodell Objekt-relationales Datenmodell DB-1-31 Datenmodelle Beispiel: Relationales Modell Alle Informationen werden in Form von Tabellen gespeichert Die Datenbank besteht aus einer Menge von Tabellen (Relationen) Im Beispiel enthält die Tabelle Mitarbeiter Informationen über die Mitarbeiter eines Betriebes In jeder Zeile (Tupel) Information über einen Mitarbeiter (alle Zeilen sind strukturell gleich) Die Spalten (Attribute) haben einen Namen (z.b. Personalnr, Name, Vorname, Geburtsdatum, etc.) Sie sind strukturell (Typ, Anzahl Zeichen) verschieden. Mitarbeiter Abteilungen DB

17 Datenmodelle Fortsetzung des Beispiels zum relationalen Modell: Die Attribute der Tupel haben primitive Datentypen, wie z.b. String, Integer oder Date Komplexe Sachverhalte werden durch Verknüpfung mehrerer Tabellen dargestellt Beispiel: Mitarbeiter PNr Name Vorname ANr 001 Huber Erwin Mayr Walter Müller Toni 02 Abteilungen ANr Abteilungsname 01 Buchhaltung 02 Produktion 03 Marketing Das relationale Datenmodell wird in Kapitel DB-3 ausführlich behandelt DB-1-33 Produkte Relationale Datenbanken: Oracle (Marktführer) IBM DB2 Microsoft SQL Server MySQL (Shareware-Datenbank) PostgreSQL (freies objektrelationales DBMS) keine vollwertigen Datenbanksysteme: dbase, FoxPro Nichtrelationale Datenbanken UDS: Netzwerk-Datenbanksystem (Siemens) IMS: Hierarchisches Datenbanksystem (IBM) Verschiedene objektorientierte DB-Produkte NoSQL-Datenbanken (Ø CS341 Distributed Information Systems) BigTable SimpleDB Hbase DB

18 Verwendung eines DBS public class Personalverw { public static void main () {... insert(mitarbeiter, "Müller");... }} Anwendungs- Programm (Software- Entwickler) select * from Mitarbeiter ; P-Nr. Name Vorname 001 Huber Erwin 002 Mayer Hugo 003 Müller select Interaktive Oberfläche für Ad-Hoc-Anfragen DBS DBAdmin x Which Backup? Full Daily Partial Weekly OK Cancel Benutzung vorgegebener Anwendungen Aus technischer Sicht ist die interaktive Oberfläche ebenfalls ein Anwendungsprogramm, das auf dem DBS aufsetzt DB-1-35 Datenbank-Sprachen Data Definition Language (DDL) Deklarationen zur Beschreibung des Schemas Bei relationalen Datenbanken: Anlegen und Löschen von Tabellen, Integritätsbedingungen usw. CREATE TABLE Mitarbeiter ( PNr NUMBER (3), Name CHAR (20), Vorname CHAR (20), Anr NUMBER (2) ) PNr Name (leer) Vorname ANr DB

19 Datenbank-Sprachen Data Manipulation Language (DML) Anweisungen zum Arbeiten mit den Daten in der Datenbank (Datenbank-Zustand) lässt sich weiter unterteilen in Konstrukte zum reinen Lesen der DB (Anfragesprache) zum Manipulieren (Einfügen, Ändern, Löschen) des Datenbankzustands Beispiel: SQL für relationale Datenbanken: SELECT * FROM Mitarbeiter WHERE Name = 'Müller' DB-1-37 Datenbank-Sprachen Wird das folgende Statement SELECT * FROM Mitarbeiter WHERE ANr = 01 in die interaktive DB-Schnittstelle eingegeben, dann ermittelt das Datenbanksystem alle Mitarbeiter, die in der Buchhaltungsabteilung (ANr = 01) arbeiten: PNr Name Vorname ANr 001 Huber Erwin Mayr Walter 01 Ergebnis einer Anfrage ist immer eine (neue) Tabelle DB

20 Verbindung zur Applikation Verwendung einer Programmierbibliothek, mit der Anwendungen gegen die Datenbank entwickelt werden können Dem Programmierer wird eine Bibliothek von Prozeduren/Funktionen zur Verfügung gestellt (Application Programming Interface, API) DDL/DML-Anweisungen als Parameter übergeben Beispiele: OCI: Oracle Call Interface ODBC: Open Database Connectivity gemeinsame Schnittstelle an alle Datenbanksysteme JDBC: Java Database Connectivity DB-1-39 DB-Anwendungsprogrammierung Beispiel: JDBC String q = "SELECT * FROM Mitarbeiter " + "WHERE Name = 'Müller' " ; Statement s = con.createstatement () ; ResultSet r = s.executequery (q) ; Die Ergebnistabelle wird an das Java-Programm übergeben. Das/die Ergebnis-Tupel können dort verarbeitet werden DB

21 DB-Anwendungsprogrammierung Eine weitere Variante ist die Einbettung von Datenbankzugriffen in eine Wirtssprache DDL/DML-Anweisungen existieren gleichberechtigt neben anderen Sprachkonstrukten (4 th generation language) Ein eigener Übersetzer (Precompiler) wird benötigt, um die Konstrukte in API-Aufrufe zu übersetzen Beispiele: Embedded SQL für verschiedene Wirtssprachen, z.b. C, C++, COBOL, usw. SQLJ oder JSQL für Java DB-1-41 DB-Anwendungsprogrammierung Beispiel in SQLJ: public static void main () { System.out.println (" Grüezi ") ; #sql {SELECT * FROM Mitarbeiter WHERE Name = 'Müller'}... } Die Ergebnistabelle wird an das Java-Programm übergeben. Das/die Ergebnis-Tupel können dort verarbeitet werden DB

22 Architektur eines DBS Drei-Ebenen-Architektur zur Realisierung von physischer und logischer Datenunabhängigkeit (nach ANSI/SPARC) A 1 A 2 A 3 A 4 A 5 Anwendungsgruppen Ext. Schema 1 Ext. Schema 2 Ext. Schema 3 Externe Ebene Logische Datenunabhängigkeit Logisches Schema Konzeptuelle (logische) Ebene Physische Datenunabhängigkeit Internes Schema Interne (physische) Ebene DB-1-43 Konzeptuelle Ebene Die konzeptuelle (logische) Ebene ist die logische Gesamtsicht aller Daten der DB Diese Gesamtsicht ist unabhängig von den einzelnen Applikationen niedergelegt im konzeptuellen (logischen) Schema Ergebnis des (logischen) Datenbank-Entwurfs und enthält die Beschreibung aller Objekttypen und Beziehungen aber keine Details der Speicherung Sie formuliert im Datenmodell des Datenbanksystems und wird spezifiziert mit Hilfe einer Daten-Definitionssprache (Data Definition Language, DDL) DB

23 Interne Ebene Das interne Schema auf der physischen Ebene beschreibt die systemspezifische Realisierung der DB-Objekte (physische Speicherung), z.b. Aufbau der gespeicherten Datensätze Indexstrukturen wie z.b. Suchbäume Das interne Schema bestimmt massgeblich das Leistungsverhalten des gesamten DBS Die Anwendungen sind von Änderungen des internen Schemas nicht betroffen (physische Datenunabhängigkeit) DB-1-45 Externe Ebene Die externe Ebene enthält die Sammlung der individuellen Sichten aller Benutzerbzw. Anwendungsgruppen in mehreren externen Schemata Ein Benutzer soll keine Daten sehen, die er nicht sehen will (Übersichtlichkeit) oder nicht sehen soll (Datenschutz) Beispiel: Das Klinik-Pflegepersonal benötigt andere Aufbereitung der Daten als die Buchhaltung Die Datenbank wird damit von Änderungen und Erweiterungen der Anwenderschnittstellen abgekoppelt (logische Datenunabhängigkeit) DB

24 Physische und logische Datenunabhängigkeit Physische Datenunabhängigkeit Eine Modifikation der physischen Speicherstruktur (z.b. Hinzufügen eines neuen Index für die Anfrageunterstützung) belässt die logische Ebene invariant, besitzt also keine Auswirkungen auf das Datenschema Logische Datenunabhängigkeit Änderungen des logischen Schemas (z.b. Hinzufügen eines neuen Attributs) kann man den Anwendungen gegenüber verbergen durch die Definition geeigneter Sichten Allerdings kann diese Unabhängigkeit nicht für alle Modifikationen des konzeptuellen Schemas garantiert werden DB

Kapitel 3: Datenbanksysteme

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

Mehr

Kapitel 3: Datenbanksysteme

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

Mehr

Kapitel 3: Datenbanksysteme

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

Mehr

Kapitel 3: Datenbanksysteme 3.1 Einleitung

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

Mehr

Herbstsemester 2009. CS241 Datenbanken Kapitel 1: Einführung. H. Schuldt. Warum Datenbanken?

Herbstsemester 2009. CS241 Datenbanken Kapitel 1: Einführung. H. Schuldt. Warum Datenbanken? Herbstsemester 2009 CS241 Datenbanken Kapitel 1: Einführung H. Schuldt Warum Datenbanken? Aus Statistiken der amerikanischen Library of Congress geht hervor, dass sich die Information, die in Büchern verfügbar

Mehr

Kapitel 1: Einführung

Kapitel 1: Einführung Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2009/2010 Vorlesung: PD Dr. Peer Kröger, Dr. Matthias

Mehr

Kapitel 1: Einführung

Kapitel 1: Einführung Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2005/2006 Vorlesung: Dr. Matthias Schubert Übungen: Elke

Mehr

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

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

Mehr

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Wesentliche Inhalte Begriff DBS Datenbankmodelle Datenbankentwurf konzeptionell, logisch und relational

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht 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

Mehr

Grundlagen von Datenbanken

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

Mehr

Themen. M. Duffner: Datenbanksysteme

Themen. M. Duffner: Datenbanksysteme Datenbanksysteme Themen Theorie Einführung Datenbank, Datenbankmanagementsystem (DBMS), Aufgaben eines DBMS Relationale Datenbanken Daten als Tabellen Datenbankentwurf im Entity-Relationship-Modell Abfragesprache

Mehr

Carl-Christian Kanne. Einführung in Datenbanken p.1/513

Carl-Christian Kanne. Einführung in Datenbanken p.1/513 Einführung in Datenbanken Carl-Christian Kanne Einführung in Datenbanken p.1/513 Kapitel 1 Einführung Einführung in Datenbanken p.2/513 Einführung Was ist ein Datenbanksystem (DBS)? Ein System zum Speichern

Mehr

Allgemeines zu Datenbanken

Allgemeines zu Datenbanken Allgemeines zu Datenbanken Was ist eine Datenbank? Datensatz Zusammenfassung von Datenelementen mit fester Struktur Z.B.: Kunde Alois Müller, Hegenheimerstr. 28, Basel Datenbank Sammlung von strukturierten,

Mehr

Relationale Datenbanken Datenbankgrundlagen

Relationale Datenbanken Datenbankgrundlagen Datenbanksystem Ein Datenbanksystem (DBS) 1 ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern

Mehr

Datenbanksysteme II. Vorlesung: PD Dr. Peer Kröger

Datenbanksysteme II. Vorlesung: PD Dr. Peer Kröger Datenbanksysteme II Sommersemester 2012 Vorlesung: PD Dr. Peer Kröger Dieses Skript basiert auf den Skripten zur Vorlesung Datenbanksysteme II an der LMU München von Prof. Dr. Christian Böhm (Sommersemester

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

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

Mehr

Definition Informationssystem

Definition Informationssystem Definition Informationssystem Informationssysteme (IS) sind soziotechnische Systeme, die menschliche und maschinelle Komponenten umfassen. Sie unterstützen die Sammlung, Verarbeitung, Bereitstellung, Kommunikation

Mehr

Kapitel 1 Grundlagen. Skript zur Vorlesung: Datenbanksysteme II Sommersemester Vorlesung: PD Dr. Peer Kröger

Kapitel 1 Grundlagen. Skript zur Vorlesung: Datenbanksysteme II Sommersemester Vorlesung: PD Dr. Peer Kröger LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2016 Kapitel 1 Grundlagen Vorlesung: PD Dr. Peer Kröger http://www.dbs.ifi.lmu.de/cms/datenbanksysteme_ii

Mehr

Software-Engineering und Datenbanken

Software-Engineering und Datenbanken Software-Engineering und Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Prof. Dr. Bernhard Schiefer 1-1 Wesentliche Inhalte Begriff DBS Datenbankmodelle

Mehr

7. Übung - Datenbanken

7. Ü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

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch 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

Mehr

Einführung. Kapitel 1 2 / 508

Einführung. Kapitel 1 2 / 508 Kapitel 1 Einführung 2 / 508 Einführung Was ist ein Datenbanksystem (DBS)? Ein System zum Speichern und Verwalten von Daten. Warum kein herkömmliches Dateisystem verwenden? Ausfallsicherheit und Skalierbarkeit

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2 Universität Osnabrück 1 3 - Objektorientierte Programmierung in Java Zur Erinnerung: Aufteilung der Schichten GUI Vorlesung 17: 3-Schichten-Architektur 2 Fachkonzept Fachkonzept - Datenhaltung Datenhaltung

Mehr

Datenbanken 16.1.2008. Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt:

Datenbanken 16.1.2008. Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt: Datenbanksysteme Entwicklung der Datenbanksysteme Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt: 1. Generation: In den fünfziger

Mehr

Kapitel 1: Einführung

Kapitel 1: Einführung Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2012/13 Vorlesung: Prof. Dr. Christian Böhm Übungen:

Mehr

OPERATIONEN AUF EINER DATENBANK

OPERATIONEN AUF EINER DATENBANK Einführung 1 OPERATIONEN AUF EINER DATENBANK Ein Benutzer stellt eine Anfrage: Die Benutzer einer Datenbank können meist sowohl interaktiv als auch über Anwendungen Anfragen an eine Datenbank stellen:

Mehr

Datenbanken. Dateien und Datenbanken:

Datenbanken. Dateien und Datenbanken: Dateien und Datenbanken: Professionelle Anwendungen benötigen dauerhaft verfügbare, persistent gespeicherte Daten. Datenbank-Systeme bieten die Möglichkeit, Daten persistent zu speichern. Wesentliche Aspekte

Mehr

3. Stored Procedures und PL/SQL

3. 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

Mehr

Einführung. Informationssystem als Abbild der realen Welt

Einführung. Informationssystem als Abbild der realen Welt Was ist ein Datenbanksystem? Anwendungsgrundsätze Betrieb von Datenbanksystemen Entwicklung von Datenbanksystemen Seite 1 Informationssystem als Abbild der realen Welt Modellierung (Abstraktion) Sachverhalte

Mehr

Übersicht über Datenbanken

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

Mehr

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse?

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse? Ein Beispiel Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse? Dipl.-Kfm. Claus Häberle WS 2015 /16 # 42 XML (vereinfacht) visa

Mehr

Gesicherte Prozeduren

Gesicherte Prozeduren Gesicherte Prozeduren 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 zurückgeliefert.

Mehr

Kapitel 1: Einführung

Kapitel 1: Einführung Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Dsteme Skript zur Vorlesung tenbanks Wintersemester 2010/2011 pitel 1: Ei Vorlesung: PD Dr. Matthias Schubert

Mehr

SQL - Übungen Bearbeitung der Datenbank Personal (1)

SQL - Übungen Bearbeitung der Datenbank Personal (1) Bearbeitung der Datenbank Personal (1) 1. Abfragen einer einzigen Tabelle 1.1. Zeigen Sie alle Informationen an, die über die Kinder der Mitarbeiter gespeichert sind. 1.2. Zeigen Sie aus der Tabelle stelle

Mehr

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte

Mehr

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695 Database Exchange Manager Replication Service- schematische Darstellung Replication Service- allgemeines Replikation von Daten von bzw. in ein SAP-System und einer relationalen DMS-Datenbank Kombination

Mehr

SQL (Structured Query Language) Schemata Datentypen

SQL (Structured Query Language) Schemata Datentypen 2 SQL Sprachelemente Grundlegende Sprachelemente von SQL. 2.1 Übersicht Themen des Kapitels SQL Sprachelemente Themen des Kapitels SQL (Structured Query Language) Schemata Datentypen Im Kapitel SQL Sprachelemente

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Datenbanken & Informationssysteme Übungen Teil 1

Datenbanken & Informationssysteme Übungen Teil 1 Programmierung von Datenbankzugriffen 1. Daten lesen mit JDBC Schreiben Sie eine Java-Anwendung, die die Tabelle Books in der Datenbank azamon ausgibt. Verwenden Sie dabei die SQL-Anweisung select * from

Mehr

Kapitel 1: Einführung

Kapitel 1: Einführung Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Datenbanksysteme I Wintersemester 2017/18 Vorlesung: Prof. Dr. Christian

Mehr

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger Grundlegendes Oracle9i PostgreSQL Prevayler Memory mywms bietet umfangreiche Konfigurationsmöglichkeiten um die Daten dauerhaft zu speichern.

Mehr

WS 2002/03. Prof. Dr. Rainer Manthey. Institut für Informatik III Universität Bonn. Informationssysteme. Kapitel 1. Informationssysteme

WS 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

Mehr

GFAhnen Datensicherung und Datenaustausch

GFAhnen Datensicherung und Datenaustausch GFAhnen Datensicherung und Datenaustausch In dieser Anleitung wird das Daten Sicheren, das Daten Wiederherstellen und der Datenaustausch zwischen 2 Rechner beschrieben. Eine regelmäßige Datensicherung

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Vermeiden Sie es sich bei einer deutlich erfahreneren Person dranzuhängen, Sie sind persönlich verantwortlich für Ihren Lernerfolg. 1 2 3 4 Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg. Gerade beim Einstig in der Programmierung muss kontinuierlich

Mehr

Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1

Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1 Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1 Was ist JDBC? Hauptsächlich eine Sammlung von Java Klassen und Schnittstellen für eine einfache Verbindung von Java Programmen

Mehr

Prozessarchitektur einer Oracle-Instanz

Prozessarchitektur einer Oracle-Instanz 6. Juni 2008 Inhaltsverzeichnis Oracle Instanz 1 Oracle Instanz 2 3 Redo Log Buffer Shared Pool Java Pool & Large Pool Oracle Instanz Eine Oracle-Instanz ist Hauptbestandteil des Oracle Datenbank Management

Mehr

5.2 Neue Projekte erstellen

5.2 Neue Projekte erstellen 5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort

Mehr

AdmiCash - Datenpflege

AdmiCash - Datenpflege AdmiCash - Datenpflege Grundlegende Funktionen der Datenpflege in AdmiCash Es kommt immer wieder vor, dass AdmiCash - Anwender die Ordnerstruktur der AdmiCash - Daten manuell anpassen. Da es sich um private

Mehr

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

2. 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

Mehr

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96 Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96 Dieser Fragenkatalog wurde aufgrund das Basistextes und zum Teil aus den Prüfungsprotokollen erstellt, um sich auf mögliche

Mehr

SharePoint Demonstration

SharePoint Demonstration SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit

Mehr

Die Grundbegriffe Die Daten Die Informationen

Die Grundbegriffe Die Daten Die Informationen Die Grundbegriffe Die Daten sind diejenigen Elemente, die vom Computer verarbeitet werden. Die Informationen sind Wissenselemente, welche durch die Analyse von Daten erhalten werden können. Die Daten haben

Mehr

Carl-Engler-Schule Karlsruhe Datenbank 1 (5)

Carl-Engler-Schule Karlsruhe Datenbank 1 (5) Carl-Engler-Schule Karlsruhe Datenbank 1 (5) Informationen zur Datenbank 1. Definition 1.1 Datenbank-Basis Eine Datenbank-Basis ist eine Sammlung von Informationen über Objekte (z.b Musikstücke, Einwohner,

Mehr

Artikel Schnittstelle über CSV

Artikel 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

Mehr

Software Engineering Klassendiagramme Assoziationen

Software 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

Mehr

Datenbanken. Ein DBS besteht aus zwei Teilen:

Datenbanken. Ein DBS besteht aus zwei Teilen: Datenbanken Wikipedia gibt unter http://de.wikipedia.org/wiki/datenbank einen kompakten Einblick in die Welt der Datenbanken, Datenbanksysteme, Datenbankmanagementsysteme & Co: Ein Datenbanksystem (DBS)

Mehr

DOKUMENTATION PASY. Patientendaten verwalten

DOKUMENTATION PASY. Patientendaten verwalten DOKUMENTATION PASY Patientendaten verwalten PASY ist ein Programm zur einfachen und zuverlässigen Verwaltung von Patientendaten. Sämtliche elektronisch gespeicherten Dokumente sind sofort verfügbar. Neue

Mehr

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

Redundanz: Dieselben Informationen werden doppelt gespeichert.

Redundanz: Dieselben Informationen werden doppelt gespeichert. Kapitel 1 Einführung 1.1 Definition Ein Datenbanksystem (auch Datenbankverwaltungssystem, abgekürzt DBMS = data base management system) ist ein computergestütztes System, bestehend aus einer Datenbasis

Mehr

teischl.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 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

Mehr

Arbeiten mit einem lokalen PostgreSQL-Server

Arbeiten 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

Mehr

seit Java 1.1 Bestandteil der API: packages java.sql, javax.sql

seit Java 1.1 Bestandteil der API: packages java.sql, javax.sql JDBC inoffizielle Abkürzung für: Java Database Connectivity seit Java 1.1 Bestandteil der API: packages java.sql, javax.sql ist eine Menge von Klassen und Methoden, um aus Java-Programmen relationale Datenbanken

Mehr

2. Datenbank-Programmierung

2. 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

Mehr

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur

Mehr

Datenbanken (WS 2015/2016)

Datenbanken (WS 2015/2016) Datenbanken (WS 2015/2016) Klaus Berberich (klaus.berberich@htwsaar.de) Wolfgang Braun (wolfgang.braun@htwsaar.de) 0. Organisatorisches Dozenten Klaus Berberich (klaus.berberich@htwsaar.de) Sprechstunde

Mehr

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Datenbanken 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,

Mehr

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Übung, Sommersemester 2013 22. April 2013 - MySQL Sebastian Cuy sebastian.cuy@uni-koeln.de Datenbanken Was sind eigentlich Datenbanken? Eine

Mehr

OUTLOOK-DATEN SICHERN

OUTLOOK-DATEN SICHERN OUTLOOK-DATEN SICHERN Wie wichtig es ist, seine Outlook-Daten zu sichern, weiß Jeder, der schon einmal sein Outlook neu installieren und konfigurieren musste. Alle Outlook-Versionen speichern die Daten

Mehr

Modul Datenbanksysteme 2 Prüfung skizzenhaft SS Aug. 2007. Name: Note:

Modul 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%

Mehr

1. Einführung. 2. Archivierung alter Datensätze

1. Einführung. 2. Archivierung alter Datensätze 1. Einführung Mit wachsender Datenmenge und je nach Konfiguration, kann orgamax mit der Zeit langsamer werden. Es gibt aber diverse Möglichkeiten, die Software wieder so zu beschleunigen, als würden Sie

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 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

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen 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.

Mehr

Oracle: Abstrakte Datentypen:

Oracle: 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

Mehr

Acht Gute Gründe für Integration und einen Content Backbone

Acht Gute Gründe für Integration und einen Content Backbone Acht Gute Gründe für Integration und einen Content Backbone COMYAN Whitepaper Autor Peter Resele Datum 9. März 2009 Status Public =GmbH Karolingerstrasse 34a 82205 Gilching Germany t + 49 810 5779390 peter.resele@comyan.com

Mehr

Daten-Synchronisation zwischen Mozilla Thunderbird (Lightning) / Mozilla Sunbird und dem ZDV Webmailer

Daten-Synchronisation zwischen Mozilla Thunderbird (Lightning) / Mozilla Sunbird und dem ZDV Webmailer Daten-Synchronisation zwischen Mozilla Thunderbird (Lightning) / Mozilla Sunbird und dem ZDV Webmailer Zentrum für Datenverarbeitung der Universität Tübingen Inhaltsverzeichnis 1.Synchronisation...aber

Mehr

Kapitel 6 Anfragebearbeitung

Kapitel 6 Anfragebearbeitung LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2014 Kapitel 6 Anfragebearbeitung Vorlesung: PD Dr. Peer Kröger

Mehr

SDD System Design Document

SDD System Design Document SDD Software Konstruktion WS01/02 Gruppe 4 1. Einleitung Das vorliegende Dokument richtet sich vor allem an die Entwickler, aber auch an den Kunden, der das enstehende System verwenden wird. Es soll einen

Mehr

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Beheben von verlorenen Verknüpfungen 20.06.2005

Beheben von verlorenen Verknüpfungen 20.06.2005 Vor folgender Situation ist sicher jeder Solid Edge-Anwender beim Öffnen von Baugruppen oder Drafts schon einmal gestanden: Die Ursache dafür kann sein: Die Dateien wurden über den Explorer umbenannt:

Mehr

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit

Mehr

Datenmanagement in Android-Apps. 16. Mai 2013

Datenmanagement 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

Mehr

Teil VI. Datenbanken

Teil VI. Datenbanken Teil VI Datenbanken Überblick 1 Grundlegende Begriffe Motivation 2 Relationale Datenbanksysteme Das Relationale Datenmodell SQL 3 Entwurf von Datenbanken Das Enity Relationship (ER) Modell Abbildung von

Mehr

INDEX. Öffentliche Ordner erstellen Seite 2. Offline verfügbar einrichten Seite 3. Berechtigungen setzen Seite 7. Öffentliche Ordner Offline

INDEX. Öffentliche Ordner erstellen Seite 2. Offline verfügbar einrichten Seite 3. Berechtigungen setzen Seite 7. Öffentliche Ordner Offline Öffentliche Ordner Offline INDEX Öffentliche Ordner erstellen Seite 2 Offline verfügbar einrichten Seite 3 Berechtigungen setzen Seite 7 Erstelldatum 12.08.05 Version 1.1 Öffentliche Ordner Im Microsoft

Mehr

Dokumentation IBIS Monitor

Dokumentation IBIS Monitor Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt

Mehr

Grundlagen von Python

Grundlagen 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

Mehr

Refactoring relationaler Datenbank. Shaoke Wu

Refactoring relationaler Datenbank. Shaoke Wu Refactoring relationaler Datenbank Shaoke Wu Überblick Einführung Bad Smells Probleme bei Database Refactoring Durchführung von Database Refactoring Visualisierung Refactoring relationaler DB Einführung

Mehr

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage .htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess

Mehr

JDBC. Allgemeines ODBC. java.sql. Beispiele

JDBC. Allgemeines ODBC. java.sql. Beispiele JDBC Java Data Base Connectivity Programmierschnittstelle für relationale Datenbanken Sammlung von Klassen, welche zum Aufbau einer Verbindung zwischen einem Java-Programm und einer Datenbank dienen Verwendet

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

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

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

Mehr