Datenbanken Unit 11: Erstellen u. Ändern von Datenbanken und Tabellen Verbindung von Java auf Datenbanken

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

Abschnitt 4: Grundlagen der Datenbanktechnologie

2. Übungsblatt 3.0 VU Datenmodellierung

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz

Einführung in Datenbanken - Wiederholung Normalformen - Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung

Inhalt. 1. Indextypen B*Baum-Index Reversed Key Index Bitmap Index Funktionsbasierter Index

CARL HANSER VERLAG. Christopher Allen. Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik

Datenbanken (WS 2015/2016)

SQL (Structured Query Language) Schemata Datentypen

Gliederung und Einordnung

Fachbereich Wirtschaftswissenschaften Campus Sankt Augustin

Inhaltsverzeichnis. jetzt lerne ich

Prüfungsberatungs-Stunde Datenbanksysteme 1 (Dbs1)

Referent: Marko Modsching. Vortrag: JPA mit Hibernate. Datum: Deutsche Software Engineering & Research GmbH

Acrolinx IQ. Verbindungen mit externen Terminologiedatenbanken 2.9

Geodatenbanksysteme in Theorie und Praxis

Carl-Engler-Schule Karlsruhe Datenbank 1 (5)

Normalformen: Sinn und Zweck

Physische Datenorganisation

Acrolinx IQ. Verbindung mit einer externen Terminologiedatenbank herstellen 2.7

7. Übung - Datenbanken

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel

Relationale Datenbanken Kursziele

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

1 Übungen zu Datenbank-Kategorien

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo.

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

Einführung in die Software-Umgebung

JDBC. Es kann z.b. eine ODBC-Treiberverbindung eingerichtet werden, damit das JAVA-Programm auf eine ACCESS-DB zugreifen kann.

Abfragen: Grundbausteine

Allgemeines zu Datenbanken

Microsoft SQL Server 2000 Programmierung

Datenbanken. Dateien und Datenbanken:

Grundlagen der Informatik 2

Software-Engineering Einführung

ICT Power-User und Supporter SIZ 2010 Modul 432: Datenbank mit Access Tanja Bossert, Andrea Weikert. 1. Ausgabe, November 2011

Übung 7 DBMS-FUNKTIONALITÄTEN UND DATENIMPORT

SQL für Trolle. mag.e. Dienstag, Qt-Seminar

Vorwort. Aufbau und Struktur

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt

Datenbanken. Produkte Dienstleistungen Referenzen

Einführung in SQL Datenbanken bearbeiten

O REILLY. Oracle PL/SQL Programmierung Paris - - Steven Feuerstein. mit Bill Pribyl. Deutsche Übersetzung von Dorothea Reder 2.

Informationslogistik Unit 1: Introduction

SQL - Übungen Bearbeitung der Datenbank Personal (1)

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 6: Datenbankabfragen mit SQL und PHP. Stand: Übung WS 2014/2015

Prozedurale Datenbank- Anwendungsprogrammierung

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

2 7 Erweiterungen. 7.1 Prozess-Kommunikation mit Datenbanken

XML - Extensible Markup Language. Agenda - Oracle XML DB

Java Persistence API 2.x. crud + relationships + jp-ql

4. Datenabfrage mit QBE 11

6. Formaler Datenbankentwurf 6.1. Rückblick. Datenbanken und Informationssysteme, WS 2012/ Januar 2013 Seite 1

Roland Tilgner. Solution Architects & Team Coaching DEVELOPMENT. ORACLE TEXT AUS PL/SQL-SICHT Features und Möglichkeiten

Komplexe Excel-Berichte mit APEX und jxls erstellen

Arbeiten mit ACCESS 2013

IBM Informix SQL. Seminarunterlage. Version vom

SQL structured query language

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Informationslogistik Allgemeine Informationen

Tag 4 Inhaltsverzeichnis

Relationale Datenbanken in der Praxis

Datenbank-Refactoring mit LiquiBase

Relationale Entwurfstheorie. Kapitel / 510

Inhalte: -Datenbanken und DBMS - Grundlagen -Einstieg in MS Access 2007:

Im Fall einer Personaldatenbank würde eine Relation beispielsweise wie folgt aussehen:

Informatik 12 Datenbanken SQL-Einführung

Mehr Ergebnisse: Linguistische Funktionen und Ähnlichkeitssuche mit SQL. Carsten Czarski ORACLE Deutschland B.V. & Co KG München

Modul 8: Verwalten von Kunden, Artikeln und mehr - Datenlisten

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen:

LINQ to SQL. Proseminar Objektorientiertes Programmieren mit.net und C# Christoph Knüttel. Institut für Informatik Software & Systems Engineering

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Kapitel 3: Datenbanksysteme

Microsoft Access 2010 Auswahlabfragen erstellen. Leibniz Universität IT Services Anja Aue

3 Indizes. 3.1 Indexarchitektur von SQL Server. SQL Server 2008: Datenbankentwicklung

Kapitel 2 Die Datenbank Buchausleihe Seite 1

2 Grundlagen in MySQL und phpmyadmin

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen

Access und OpenOffice.org

Java Database Connectivity (JDBC) Walther Rathenau Gewerbeschule 1

Einstieg in relationale Datenbanken mit MySQL. Dr. Kerstin Puschke September 2009

Oracle PL/SQL Objekte und objektrelationale Techniken. Marco Skulschus Marcus Wiederstein

Physischer Datenbankentwurf: Datenspeicherung

Softwareentwicklung mit Enterprise JAVA Beans

Einführung in die Informatik II

Kapitel 7: Formaler Datenbankentwurf

Hochschule Karlsruhe Technik und Wirtschaft Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

PL/SQL Unit Tests mit SQL Developer

SQL Optimizer und SQL Performance

Ein kooperatives elearning Datenbankportal der FH Köln

Geordnete Form...36 Erfassung und Speicherung...37 Relationale Datenbanken...37 Einfache Tabellen...37 Objekte und Begriffe relationaler

Erstellen einer Datenbank. Datenbankabfragen

Expose zur Studienarbeit Indizierung von XML-Daten mittels GRIPP

Einführung in Datenbanksysteme. H. Wünsch

Hibernate. Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen. Nabil janah 1 Hibernate

Access [basics] Programmieren mit Arrays. Beispieldatenbank. Arrays. Eindimensionale Arrays. VBA-Grundlagen Programmieren mit Arrays

Übungsaufgabe Transaktion als Middleware

Inhaltsverzeichnis. 1 Einleitung 11

Grundlagen der EDV 3. Vorlesung mit Übungen. Dipl. Ing. Martin Ney

Transkript:

Datenbanken Unit 11: Erstellen u Ändern von Datenbanken und Tabellen Verbindung von Java auf Datenbanken 13 VI 2017

Organisatorisches morgen Abschlusstest UE (Gruppe 1: 14:45 16:00, Gruppe 2: 16:00 17:15 ) Nächste Woche am 21 Juni finden beide Übungsgruppen gleichzeitig statt (16 17:30 Uhr im RWZ HS): Besprechung weiterer Normalisierungsbeispiele VO-Abschlussprüfung am 28 Juni, 10 12 Uhr im Zeichensaal (Anmeldung über MU Online) alte Prüfung online Nächste Woche letzte VO: - NoSQL-Einführung (Florian Heber) - XML-Einführung (Martin Antenreiter)

SQL Fragen zum Abschlusstest? Erstellen und Ändern von Datenbanken und Tabellen Verbindung von Java auf Datenbanken SQL Injections Prepared Statements

Indexstrukturen auf Datenbanken Sucht man in Tabelle Zeilen mit bestimmtem Wert in Spalte, muss man sich im schlimmsten Fall alle Zeilen ansehen Indexstrukturen auf Tabellen helfen durch Vorsortierung, sodass Abfragen schneller ausgeführt werden können Verschiedene Indexstrukturen: Index Sequential Access Method (ISAM) B-Bäume B + -Bäume Hashing Bitmap Indizes

Indexstrukturen auf Datenbanken Verschiedene Indexstrukturen: Index Sequential Access Method (ISAM) B-Bäume B + -Bäume Hashing Bitmap Indizes Der Performancegewinn von Abfragen sowie der Performanceverlust von Änderungen hängen von der verwendeten Indexstruktur ab In SQL hat man entsprechend je nach verwendeter Variante die Wahl zwischen verschiedenen Indextypen

Index Sequential Access Method (ISAM) Lineares Durchsuchen aller Daten ist ineffizient ISAM legt zunächst für jeden Datensatz einen eindeutigen Schlüssel fest Anschließend werden einige Schlüsselwerte für den Index festgelegt Sowohl Index als auch Daten sind jeweils bzgl des Index sortiert Damit muss bei Suchen eines Datensatzes zunächst nur der Index durchsucht werden (Für Details zu anderen Indexstrukturen siehe die Folien von Alois Kemper)

Java Persistence API Alternative für Java-SQL Verbindung: Java Persistence API: kann Objekte direkt in Datenbank schreiben Es gibt objektrelationale Metadaten für Beziehungen zwischen Tabellen (als Java Annotation bzw als xml Datei hinterlegt) in eigener Java Persistence Query Language (JPQL) kann auf Objekte abgefragt werden

PL/SQL Prozeduren in SQL: Neben einzelnen Abfragen lassen sich in SQL auch Prozeduren schreiben zb bieten PL/SQL (Oracle) oder MySQL Prozeduren ua: Verzweigungen Schleifen Rückgabewert Einbetten von Abfragen in den Code Cursor-Schleifen über die Zeilen der Ergebnistabelle einer Abfrage

Normalisierung: Weiteres Beispiel Entwerfen Sie eine Datenbank einer Ticketagentur für Pop-/Rock-Konzerte Für jedes Konzert sollen die spielenden Bands, das Datum und die Beginnzeit, das Land, die Stadt sowie der Veranstaltungsort gespeichert werden Weiters soll der Ticketpreis hinterlegt werden, wobei Sie davon ausgehen können, dass dieser für jedes Konzert einheitlich ist Für jeden Kunden sollen Name und Adresse gespeichert werden sowie wieviele Tickets für welches Konzert bestellt wurden

Normalisierung: Tickets für Konzerte Manchmal bekommt man kein gutes Schema, wenn man die Normalformen der Reihe nach durchgeht Beispiel: Ticket_no Concert_no Band Es gibt folgende FDs und MVDs: Ticket_no Concert_no Ticket_no Band Concert_no Band

Normalisierung: Tickets für Konzerte Manchmal bekommt man kein gutes Schema, wenn man die Normalformen der Reihe nach durchgeht Beispiel: Ticket_no Concert_no Band Es gibt folgende FDs und MVDs: Ticket_no Concert_no Ticket_no Band Concert_no Band Der Dekompositionsalgorithmus für 4NF auf die letzte MVD angewandt gibt ein gutes Datenbankschema

Verallgemeinerter Dekompositionsalgorithmus für 4NF Gegeben: Relation R, Menge F von MVDs Wir wollen: Zerlegung R 1,, R n in 4NF Verallgemeinerter Dekompositionsalgorithmus: Initialisiere Z := {R}; while (es gibt R i in Z, das nicht in 4NF) do 1 Finde MVD α β in R i mit α β = und α R i 2 Zerlege R i in R i1 := α β und R i2 := R i β 3 Ersetze R i in Z durch R i1 und R i2, dh Z := (Z {R i }) {R i1, R i2 } (Nachdem jede Relation in 4NF auch in BCNF ist, gibt es Fälle, wo eine 4NF Zerlegung nicht abhängigkeitserhaltend ist)

Normalisierung: Tickets für Konzerte Beispiel: Ticket_no Concert_no Band Es gibt folgende FDs und MVDs: Ticket_no Concert_no Ticket_no Band Concert_no Band Achtung: Wählt man eine andere FD/MVD für Zerlegung erhält man ein schlechteres Datenbankschema (Zur Erinnerung: 4NF ist nicht immer abhängigkeitserhaltend, sodass es einen Unterschied machen kann, welche FD für Zerlegung gewählt wird!)