Database Management. Prof. Dr. Oliver Günther und Steffan Baron Sommersemester 2002 (I)



Ähnliche Dokumente
Database Management. Prof. Dr. Oliver Günther und Steffan Baron Sommersemester 2002 (II)



Exercise (Part II) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Klausur Interoperabilität

Algorithms & Datastructures Midterm Test 1

Universität Augsburg, Institut für Informatik Wintersemester 2011/2012 Prof. Dr. W. Kießling 03. Feb Semesterklausur

Lektion 3: Nominativ und Akkusativ (nominative and accusative cases)

MobiDM-App Handbuch für Windows Mobile

cs241: Datenbanken mit Übungen HS 2011

Therefore the respective option of the password-protected menu ("UPDATE TUBE DATA BASE") has to be selected:

PHP + MySQL. Die MySQL-Datenbank. Hochschule Karlsruhe Technik & Wirtschaft Internet-Technologien T3B250 SS2014 Prof. Dipl.-Ing.

SWISSVAULT StorageCenter Console Version 5 Kurzanleitung für SWISSVAULT Combo Partner

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum:

Wenn Russland kein Gas mehr liefert

10.6 Programmier-Exits für Workitems

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

SQL (Structured Query Language) Schemata Datentypen

SanStore: Kurzanleitung / SanStore: Quick reference guide

Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook ( ) Zentrum für Datenverarbeitung der Universität Tübingen

Der Wetterbericht für Deutschland. Read the weather reports and draw the correct weather symbols for each town.

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

Preisliste für The Unscrambler X

eurovat Magento Extension Magento - Extension Extension V1.4.2 Dokumentation Version 1.0 SNM-Portal UG (haftungsbeschränkt) & Co. KG Vorherstraße 17

Titelbild1 ANSYS. Customer Portal LogIn

Login data for HAW Mailer, Emil und Helios

Abschlussklausur des Kurses Portfoliomanagement

CABLE TESTER. Manual DN-14003

All Motorola Europe, Middle East & Africa Approved Channel Partners

Listening Comprehension: Talking about language learning

Höchstpunktzahl / Max. of points 25 Mindestpunktzahl / Min of points 12,5 Assistenten Özbek

MOUNT10 StoragePlatform Console

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

Zugang zum Online-Portal mit Passwort Benutzeranleitung (Stand 01/2015)

ZENTRALER INFORMATIKDIENST DER JOHANNES KEPLER UNIVERSITÄT LINZ Abteilung Kundendienste und Dezentrale Systeme. PPP für Windows 3.

Datenbanken (Bachelor) (SPO2007) WS 2011/12

GERMAN VACATION WORK (2014)

Zum Download von ArcGIS 10, 10.1 oder 10.2 die folgende Webseite aufrufen (Serviceportal der TU):

Invitation - Benutzerhandbuch. User Manual. User Manual. I. Deutsch Produktübersicht Beschreibung... 2

Datenbanken für Online Untersuchungen

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich?

ICON Switzerland 2015 Praxisbeispiel Connections an der Universität Zürich

Datenbanksysteme I. Klausur zum Praktikum. Mehrere Professoren prüfen mit genau einem Beisitzer genau einen Studenten.

Anleitung für die Hausverwaltung

RL

Datenbanken 1. Einführung und Zugänge für die eingesetzten Resourcen. ISWeb - Information Systems & Semantic Web University of Koblenz Landau, Germany

Online-Dateienablage und Datenaustauschdienst Box.net Stand: September 2011

Übungsblatt 8- Lösungsvorschlag

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software

miditech 4merge 4-fach MIDI Merger mit :

Nutzungsbroschüre für Vereine

MIN oder MAX Bildung per B*Tree Index Hint

AM 53/2012. Amtliche Mitteilungen 53/2012

Prozedurale Datenbank- Anwendungsprogrammierung

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Synchronisations- Assistent

Symbio system requirements. Version 5.1

MySQL Installation. AnPr

2. Einrichtung der Verbindung zum Novell-NetStorage-Server

HiOPC Hirschmann Netzmanagement. Anforderungsformular für eine Lizenz. Order form for a license

WAS IST DER KOMPARATIV: = The comparative

User Manual Data 24. Login und Layout

Corporate Video Nutzerhandbuch zum Corporate Video Buchungsportal

GSM Scanner Bedienungsanleitung

Aufbau eines IT-Servicekataloges am Fallbeispiel einer Schweizer Bank

Datenanpassung: Erdgas und Emissionsrechte

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007

PROFIS Software Lösungen

p^db=`oj===pìééçêíáåñçêã~íáçå=

There are 10 weeks this summer vacation the weeks beginning: June 23, June 30, July 7, July 14, July 21, Jul 28, Aug 4, Aug 11, Aug 18, Aug 25

iet ITSM / REQUEST MANAGEMENT by WEBSHOP / self service SOFTPOINT electronic GmbH & Co KG Linzer Straße 16a A-4221 Steyregg

Inhaltsverzeichnis. 1. Fragestellung

IV. Datenbankmanagement

NoSQL mit Postgres 15. Juni 2015

Anhang A - Weitere Bibliotheken. Die Bibliothek Mail_02.lib ermöglicht das Versenden von s mit dem Ethernet-Controller


ORM & OLAP. Object-oriented Enterprise Application Programming Model for In-Memory Databases. Sebastian Oergel

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

Der erstmalige Besuch (Neuregistrierung)

INNER WHEEL DEUTSCHLAND

Die PayPal Testumgebung (Sandbox) Inhalt. Version Dezember 2013

Bedienungsanleitung User Manual

Communications & Networking Accessories

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

HOW TO. Celvin NAS Server So greifen Sie über das Internet auf Ihren Celvin NAS Server zu. DDNS und Portweiterleitung am Celvin NAS Server einrichten

Oracle: Abstrakte Datentypen:

Informatik 1 Kurzprüfung 2 LÖSUNG

Benutzerhandbuch - Elterliche Kontrolle

Oracle SQL Tutorium - Wiederholung DB I -

HowTo: Anmeldung per WebVPN

Der Empfänger, der das Verschlüsselungsverfahren noch nicht nutzen kann, erhält folgende

Installation der 4Dv12sql Software für Verbindungen zum T.Base Server

Alle Informationen zu Windows Server 2003 Übersicht der Produkte

Benutzeranleitung Profilverwaltung

magento Inhalt: 1) Zusammenfassung der Daten 2) Grundeinstellungen ändern Schnelleinstieg

Anleitung zur Beurteilungssystematik von Lehrveranstaltungen mit immanentem Prüfungscharakter in MEDonline als Lehrende/r

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Transkript:

HUMBOLDT UNIVERSITÄT ZU BERLIN Wirtschaftswissenschaftliche Fakultät Telefon: (030) 2093-5742 Institut für Wirtschaftsinformatik Telefax: (030) 2093-5741 Spandauer Str. 1 10178 Berlin E-mail: iwi@wiwi.hu-berlin.de Diplomprüfung Database Management Prof. Dr. Oliver Günther und Steffan Baron Sommersemester 2002 (I) Sie können in dieser Klausur bzw. Teilklausur maximal 30 Punkte erzielen. Wenn Sie mehrere Teilklausuren schreiben, beginnen Sie bitte die Beantwortung jeder Teilklausur auf einem separaten Bogen Papier. Vergessen Sie nicht, jeden eingereichten Bogen Papier mit Ihrem Namen zu versehen. Es sind keine Hilfsmittel zugelassen. Die Aufgaben kommen in deutscher und in englischer Fassung. Die zwei Fassungen sind identisch, bis auf die Namen von Tabellen und Spalten. Daher dürfen Sie nur eine Fassung nutzen. Sie können auf Deutsch oder auf Englisch antworten. In this exam (Klausur) or partial exam (Teilklausur), you can obtain at most 30 credits. If you write more than one partial exam, please write the solutions to each partial exam on a separate sheet of paper. Do not forget to write your name on each sheet of paper. You are not allowed to use any books, personal notes, or other auxiliary material. There is a German and an English version of the exercises. Both versions are identical, except of the names of tables and columns. Therefore, you must use only one version. You can write the answers on German or English. Aufgabe Max. Punkte Erworbene Punkte Exercise Max. Points Points obtained 1 (a) 5 Teilsumme 1 2 (a) 3 (b) 3 (c) 3 (d) 3 (e) 3 Teilsumme 2 3 (a) 2 (b) 2 (c) 4 (d) 2 Teilsumme 3 SUMME

ENGLISH VERSION ENGLISCHE FASSUNG Description of the application for exercises 1 and 2. The following relational schema is used to store information about orders from an online shop. The primary key of each relation is underlined. transactions (transid, orderdate) For each transaction, an identifier (transid, data type integer) along with the respective order date (orderdate, data type date) is stored. orders (transid, product) In this table, for each ordered product the product name (product, data type varchar2(9)) and the identifier of the transaction in which the product was ordered is saved. 1. ER-Modeling (a) (5 points) Draw an Entity-Relationship diagram for this application. You may use either the classical ER notation (with rectangles, diamonds, etc.) or the Oracle Designer notation. Clearly mark the type of all relationships. 2. SQL (a) (3 points) Create a query to display the number of transactions in each month. Hint: You may use the function to_char(attribute, format) which converts attribute into a string according to the given format statement. For example, if order date is January 19, 2002, to_char(orderdate, DD:MON:YYYY ) returns the string 19:JAN:2002. (b) (3 points) Create the view JUNE_TRANSACT which contains the transaction identifier, the order date and the productname for all transactions of June. (c) (3 points) Determine the number of transactions in June that contain both Butter and Milk. (d) (3 points) Write a query to display all transactions in June with more than 5 items. (e) (3 points) Determine the maximum number of items in a single transaction in June. 3. Consider the following database schema, HTML/PHP form definition and code fragment. Database Schema: Customers (LoginName, Password, RealName, Address, Balance) Orders (OrderNo, Date, Customer) Contains (OrderNo, Product, Amount) HTML/PHP Form Definition: <form action="action.php" method="post"> Login name: <input type="text" name="login_name"> Password: <input type="text" name="password"> <input type="submit"> </form>

action.php: <?php $conn = mysql_connect("localhost", "guenther", ""); $res = mysql_query( "SELECT Product FROM Customers, Orders, Contains WHERE Customer = $login_name AND Customer = LoginName AND Password = $password ", $conn); print "<TABLE>\n"; do { $data = mysql_fetch_array($res); if (!is_array($data)) { break; } print " <TR>\n"; print " <TD>"; print implode("</td>\n <TD>", $data); print" </TR>\n"; } while ($data); print "</TABLE>\n";?> (a) (2 points) What does this code do? (b) (2 points) What does the program do if somebody uses a wrong login name or a wrong password? (c) (4 points) Modify the code such that customers see their account balance immediately after logging in. (d) (2 points) Where in the architecture of a web-based information system does this code run (on which servers or clients)?

GERMAN VERSION DEUTSCHE FASSUNG Anwendungsbeschreibung für die Aufgaben 1 und 2. Das folgende Relationenschema wird zur Speicherung der Bestelldaten eines Online-Shops verwendet. Die Attribute, die zum Primärschlüssel gehören, sind unterstrichen. transaktionen (transid, bestelldatum) Für jede Transaktion wird eine Kennung (transid, Datentyp integer) und das jeweilige Bestelldatum (bestelldatum, Datentyp date) gespeichert. bestellungen (transid, produkt) In dieser Tabelle wird für jedes bestellte Produkt der Produktname (produkt, Datentyp varchar2(9)) und die Kennung der Transaktion, in der das Produkt bestellt wurde, gespeichert. 1. ER-Modellierung (a) (5 Punkte) Zeichnen Sie das Entity-Relationship-Modell für diese Anwendung. Sie können die klassische ER-Notation (mit Rechtecken, Rauten usw.) oder die Notation des Oracle Designer verwenden. Kennzeichnen Sie dabei eindeutig den Beziehungstyp für alle Beziehungen. 2. SQL (a) (3 Punkte) Schreiben Sie eine Anfrage, die die Anzahl der Transaktionen in jedem Monat ausgibt. Hinweis: Sie können die Funktion to_char(attribut, format) verwenden, die das Attribut attribut gemäß der Formatangabe format in eine Zeichenkette umwandelt. Lautet das Bestelldatum bspw. 19. Januar 2002, gibt to_char(orderdate, DD:MON:YYYY ) die Zeichenkette 19:JAN:2002 zurück. (b) (3 Punkte) Legen Sie die Sicht JUNI_TRANSAKT an, die für alle Transaktionen im Monat Juni die Transaktionskennung, das Bestelldatum und den Produktnamen enthält. (c) (3 Punkte) Bestimmen Sie die Anzahl der Transaktionen im Juni, die Butter und Milch enthalten. (d) (3 Punkte) Geben Sie eine Anfrage an, die alle Transaktionen im Monat Juni ausgibt, die mehr als 5 Produkte enthalten. (e) (3 Punkte) Bestimmen Sie die maximale Anzahl von Produkten, die in einer einzelnen Transaktion im Juni bestellt wurden. 3. Betrachten Sie das folgende Relationenschema, die HTML/PHP-Formular-Definition und den angegebenen Quelltext-Ausschnitt. Relationenschema: Kunden (Nutzername, Passwort, Klarname, Adresse, Kontostand) Bestellungen (BestellNr, Datum, Kunde) Enthaelt (BestellNr, Produkt, Betrag)

HTML/PHP-Formular-Definition: <form action="action.php" method="post"> Nutzername: <input type="text" name="login_name"> Passwort: <input type="text" name="password"> <input type="submit"> </form> action.php: <?php $conn = mysql_connect("localhost", "guenther", ""); $res = mysql_query( "SELECT Produkt FROM Kunden, Bestellungen, Enthaelt WHERE Kunde = $login_name AND Kunde = Nutzername AND Passwort = $password ", $conn); print "<TABLE>\n"; do { $data = mysql_fetch_array($res); if (!is_array($data)) { break; } print " <TR>\n"; print " <TD>"; print implode("</td>\n <TD>", $data); print" </TR>\n"; } while ($data); print "</TABLE>\n";?> (a) (2 Punkte) Was macht dieses Programm? (b) (2 Punkte) Was macht das Programm, wenn jemand einen falschen Nutzernamen oder ein falsches Paßwort benutzt? (c) (4 Punkte) Ändern Sie den Quelltext derart, daß den Kunden unmittelbar nach der Anmeldung ihr Kontostand angezeigt wird. (d) (2 Punkte) Wo in einem WWW-basierten Informationssystem wird dieses Programm ausgeführt, auf dem Server oder auf dem Client?