Datenbankprogrammierung
Axel Kohnert
Aufgabe 3
WS 00/01

Abgabe bis 5.2.00

Die Aufgaben sind per email an axel.kohnert@uni-bayreuth.de abzugeben. Bei der Namensvergabe der Tabellen ist die Matrikelnummer mit einzubauen, d.h. die Tabelle heisst nicht Firma sondern Firma123456 wenn, die Matrikelnummer 123456 wäre.
 
 
 

2+2+3+5 Punkte
 
 

Schreiben Sie vier Java Programme. D.h. sie  müssen auf dem Rechner btmix1 mit javac .... kompilerbar sein und mit java ... laufen.
Es geht nochmal um Primzahlen. Es gibt eine Tabelle Primzahl mit zwei Spalten, der Primzahl und der Spalte  Primzahlzwilling, in der ein 'n' steht wenn die Zahl kein  Partner eines Primzahlzwillings ist , 'k'  wenn die Primzahl der kleinere Wert eines Zwillingspaares ist.,  'g' steht in der Spalte wenn die Zahl der groessere Partner eines Zwillingpaares ist, 'v' steht in der Spalte wenn man das nicht weiss. Es kann noch ein 'b' in der Spalte stehen, wenn die Zahl sowohl kleinerer als auch groesserer Partner ist (z.B. die Zahl 5).
 

programm create_123456.java                  legt das Datenbankschema an
programm drop_123456.java                      löscht das Datenbankschema
programm  insert_123456.java                   füllt das Datenbankschema
programm update_123456.java                  test auf zwilling
 

beim Füllen soll ein Startwert eingelesen   werden und die nächsten 1000 Zahlen sollen getestet werden.  Werden Primzahlen gefunden kommen diese in die Datenbank, in der Spalte zwilling steht ein 'v'.
beim Update wird mit Transaktionen gearbeitet. Eine Transaktion besteht aus dem Lesen der Zahl dann wird getestet ob die um zwei groessere Zahl auch in der Datenbank ist. Wenn ja hat man einen Zwilling und kann die aktuelle Zahl auf 'k' (oder 'b')setzen und den groesseren Partner auf 'g' (oder 'b'). Wurden beide Partner geändert ist die Transaktion abgeschlossen. Beim Programm update wird die komplette Datenbank geupdatet, d.h. danach darf in der Spalte Zwilling kein 'v' mehr stehen. Bei der update Aufgabe kann auch mit stored procedures gearbeitet werrden (muss aber nicht)