• Keine Ergebnisse gefunden

Fachlicher Hintergrund

N/A
N/A
Protected

Academic year: 2022

Aktie "Fachlicher Hintergrund"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Vorname: __________________________ Semester: ____ Fachrichtung: ____

Klausur Informatik II (Teilprüfung) Theorie und Einsatz von Datenbanken

am Mittwoch, den 31.07.2002, ab 10:00 im HS16

Hinweis : Unterlagen sind nicht erlaubt! Das Weitergeben oder Einholen von Informationen von/zu Ihrer Nachbarin oder Ihrem Nachbarn ist verboten.

Beantworten Sie die folgenden Fragen auf den ausgeteilten Blättern.

Schreiben Sie auf jedes Blatt Name, Vorname, MatrNr, Fachrichtung und Semester (vgl. oben).

Anmerkung: Bitte lesen Sie die Aufgabenstellung sehr sorgfältig. Die meisten Fragen setzen sich aus mehreren Teilfragen zusammen, die einzeln mit Punkten belegt sind. Maximal können Sie 60 Punkte erreichen, 24 sind nötig, um die Teilprüfung "Informatik II" zu bestehen.

Fachlicher Hintergrund

Eine "gläserne Produktion" bei Lebensmitteln, wie sie in jüngster Zeit von Politikern gefordert wird, soll dazu beitragen, Lebensmittelskandale weitgehend zu vermeiden und das Vertrauen der Verbraucher in Lebensmittel wieder herzustellen.

Ein Teilaspekt in diesem Zusammenhang stellt die Dokumentation der Behandlung von Tieren mit Arzneimitteln dar. Hierfür ist das - in der Regel manuell geführte - Bestandsbuch einzusetzen.

Statt dieser fehleranfälligen manuellen Lösung soll eine datenbankbasierte Lösung entwickelt werden. Hierzu sind in den nachfolgenden Aufgaben

a) Schwachstellen am derzeitigen Bestandsbuch zu analysieren und b) eine verbesserte Lösung vorzuschlagen.

(2)

1 Analyse des Ist-Standes und Entwicklung von Verbesserungsvorschlägen

Nachfolgend sehen Sie den vom Gesetzgeber in der "Tierärztlichen

Hausapothekenverordnung" festgelegten Aufbau des Bestandsbuches - mit einem Beispielseintrag.

Standort des Tieres (bei mehreren Tieren:

der Tiere) zum Zeitpunkt der Behandlung bzw.

in der Wartezeit

Arzneimittel- bezeichnung

sowie Nummer des tierärztlichen Anwendungs-

und Abgabebeleges

Datum der Anwendung sowie

Art der Verabreichung und verabreichte Menge des Arzneimittels

Wartezeit in

Tagen Name der

anwendenden Person bzw.

Personen

Ohrmarke 12345:

Kälberaufzuchtst all,

Ohrmarke 12346:

Kälberaufzuchtst all

Bez.: Vieh-Agra Nr.: 4711

1.1.2002, intramuskulä r, 200 ml

1.2.2002 intramuskulä r, 300 ml

1.3.2002 intramuskulä r, 400 ml

1.3.2002 intramuskulä r, 500 ml

30 Xaver Huber und

Sepp Bierbichler

1.1 Setzen Sie sich mit dem o.g. Aufbau des Bestandsbuches kritisch auseinander.

Ist eine 1:1-Übernahme des Tabellenaufbaus in eine Datenbank sinnvoll?

Prüfen Sie u.a. hierzu die Eindeutigkeit jedes Datensatzes, die Einhaltung der 1. bis 3. Normalform usw. und beschreiben Sie Verbesserungsvorschläge.

Begründen Sie Ihre Antworten. [10]

(3)

1.2 Welche Felder des o.g. Bestandsbuches sollten sinnvollerweise in separate Tabellen ausgelagert werden. Wählen Sie passende Bezeichnungen für diese

Tabellen und begründen Sie Ihre Antworten [4]

2 Entwicklung eines ER-Modells

2.1 Entwickeln Sie ein Grobdatenmodell für die Dokumentation der Tierbehandlung im Rahmen der "Tierärztlichen Hausapothekenverordnung" mit mindestens 6 Entitätsmengen. Notieren Sie zu jeder Entitätsmenge einige relevante Attribute - insbesondere die Primärschlüsselattribute.

Entwickeln Sie das Grobdatenmodell in der Weise, daß ausschließlich 1:m-

Beziehungen auftreten. [10]

(4)

3 Umsetzung

Am Bildschirm erhalten Sie in einem Eingabefeld für die Ohrmarkennummer die Fehlermeldung #Name?

Was ist die Ursache für diese Fehlermeldung. Beschreiben Sie außerdem zwei Verfahren - ohne das Feld zu löschen -, diese oben aufgeführte Fehlermeldung zu vermeiden. (Nachfolgende Abbildung zeigt hierzu einen Ausschnitt aus den

Eigenschaften des betreffenden Feldes.) [6]

(5)

4 Zeigen Sie schematisch den Aufbau einer dreistufigen Client- Server-Architektur und erläutern Sie an selbstgewählten

Beispielen die Vorteile. [4]

5 Datenbanken im Internet

5.1 Nachfolgend sehen Sie einen Bildschirmausdruck eines Formulars zur

Erfassung einer Tierbehandlung sowie den betreffenden HTML-Code der Datei

"Tierbehandlung.html".

<HTML>

<HEAD>

<TITLE>Tierbehandlung</TITLE>

</HEAD>

<BODY>

<FORM METHOD="POST" ACTION="Tierbehandlung.asp">

<B>Ihre Betriebsnummer:</B> <INPUT TYPE="TEXT" NAME="bnr"><BR>

<B>Ihr eMail:</B> <INPUT TYPE="TEXT" NAME="mail"><BR>

<B>Behandeltes Tier:</B> <INPUT TYPE="TEXT" NAME="tier"><BR>

<B>Medikament:</B> <INPUT TYPE="TEXT" NAME="arznei"><BR>

<BR>

<INPUT TYPE="SUBMIT" VALUE="Abschicken">

</FORM>

</BODY>

</HTML>

Erläutern Sie den Zusammenhang zwischen der oben aufgeführten Datei

"Tierbehandlung.html" und der nachfolgend aufgeführten Datei

"Tierbehandlung.asp". [2]

(6)

5.2 Nachfolgend sehen Sie den Ausdruck der Datei "Tierbehandlung.asp".

Erläutern Sie die markierten Anweisungen.

<HTML>

<HEAD>

<Title>Tierbehandlung </title>

</head>

<body bgcolor=#EEEEEE text=#000000 link=#AA5522 vlink=#772200 alink=#000000>

<h2>Formular der Tierbehandlungen</h2>

<%

AbsBNR = request.form("bnr") AbsMail = request.form("mail") AbsTier = request.form("tier") AbsArznei = request.form("arznei")

set conn = server.createobject("adodb.connection") conn.open "Tiermedikationen"

SQLstmt = "INSERT INTO (Betrieb, Mail, Tier, Mittel)"

SQLstmt = SQLstmt & " VALUES ("

SQLstmt = SQLstmt & "'" & AbsBNR & "',"

SQLstmt = SQLstmt & "'" & AbsMail & "',"

SQLstmt = SQLstmt & "'" & AbsTier & "',"

SQLstmt = SQLstmt & "'" & AbsArznei & "'"

SQLstmt = SQLstmt & ")"

Set RS = conn.execute(SQLstmt)

response.write "Die Behandlung wurde dokumentiert.<BR>"

Conn.Close %>

</center>

<p>&nbsp;</P>

</body>

</html>

Antwort zu a) Erläutern Sie die Bedeutung der Zeichen <% sowie %> [2]

Antwort zu b) Erläutern Sie diesen Anweisungsblock:

AbsBNR = request.form("bnr") AbsMail = request.form("mail") AbsTier = request.form("tier")

AbsArznei = request.form("arznei") [2]

a) Erläutern Sie die Bedeutung der Zeichen <%

sowie %>

b) Erläutern Sie diesen Anweisungsblock

c) Erläutern Sie diesen Anweisungsblock

d) Erläutern Sie diese Anweisung

(7)

SQLstmt = "INSERT INTO (Betrieb, Mail, Tier, Mittel)"

SQLstmt = SQLstmt & " VALUES ("

SQLstmt = SQLstmt & "'" & AbsBNR & "',"

SQLstmt = SQLstmt & "'" & AbsMail & "',"

SQLstmt = SQLstmt & "'" & AbsTier & "',"

SQLstmt = SQLstmt & "'" & AbsArznei & "'"

SQLstmt = SQLstmt & ")" [2]

Antwort zu d) Erläutern Sie diese Anweisung:

Set RS = conn.execute(SQLstmt) [2]

(8)

6 Arbeiten mit Daten

Nachfolgend sehen Sie ein QBE-Fenster von Access.

6.1 Erläutern Sie anhand der in der obigen Abbildung aufgeführten Tabellen und Felder das Ziel, das damit verfolgt wird, wenn referentielle Integrität zwischen Tabellen vereinbart wurde. (Erläutern Sie in diesem Zusammenhang die

Begriffe "Master-" und "Detailtabelle") [5]

(9)

6.2 Ist zwischen den drei angezeigten Tabellen "referentielle Integrität" vereinbart worden ? Begründen Sie Ihre Antwort bzw. ergänzen Sie die Abbildung in der Weise, wie nach Ihrer Meinung referentielle Integrität angezeigt werden müßte.

[1]

6.3 Erläutern Sie verbal, nach welchen Kriterien die dargestellte Abfrage selektiert.

[4]

6.4 Nachfolgend sehen Sie ein SQL-Statement. Liefert dieses SQL-Statement die gleichen Ergebnisse wie die o.g. Abfrage im QBE-Fenster von Access ? Begründen Sie Ihre Antwort. Korrigieren Sie ggf. das SQL-Statement so, daß es das gleiche Abfrageergebnis liefert, wie die Abfrage im o.g. QBE-Fenster.

Beziehen Sie sich bei Ihrer Analyse ausschließlich auf die fett gedruckten Teile

des nachfolgenden SQL-Statements. [6]

SELECT Tierbehandlungen.Ohrmarkennummer, Tierbehandlungen.Datum, Tierbehandlungen.BetriebsID, Medikamentenstammdaten.Medikamentenname

FROM Tierarztstammdaten INNER JOIN

(Medikamentenstammdaten INNER JOIN Tierbehandlungen ON Medikamentenstammdaten.MedID = Tierbehandlungen.Medikament) ON Tierarztstammdaten.ArztID = Tierbehandlungen.Arzt

WHERE (((Tierbehandlungen.BetriebsID)=4711)

OR ((Medikamentenstammdaten.Medikamentenname)="VETOKEHL Salm D6")) OR (((Tierbehandlungen.BetriebsID)=4711)

OR ((Tierarztstammdaten.Nachname)="Maier*"));

Referenzen

ÄHNLICHE DOKUMENTE

l Beteiligte Klassen werden durch ihre Schlüssel (Identifier) repräsentiert; die Schlüssel sind die Attribute der Beziehung.. l Die Menge aller Attribute bildet den Schlüssel der

Standardmäßig beinhaltet die Ergebnistabelle einer Abfrage mit verknüpften Tabellen nur die Datensätze, bei denen der Inhalt der verknüpften Tabellenfelder gleich ist...

1983: The global budget of atmospheric nitrogen species.. “Trace atmospheric constituents, properties, transformation and

2310 Blatt 6* 04.1989 Maximale Immissionswerte zum Schutze der Vegetation, maximale Immissionswerte für Ozon. 3792 Blatt 1 07.1978 Verfahren zur

2310 Blatt 6* 04.1989 Maximale Immissionswerte zum Schutze der Vegetation, maximale Immissionswerte für Ozon. 3792 Blatt 1 07.1978 Verfahren zur

für Unterricht und Prüfungen im Profilfach Technik und Management. an Technischen Gymnasien

Besteuerung, Ersparnisbildung, Aufkommens- und Renditeeffekte sowie grundsätzlich diskutierten Besteuerungsalternativen vgl. zur Vorgeschichte BVerfG-Urt. 557 sowie