prev up next

Microsoft Access

Access ist ein relationales Datenbanksystem der Firma Microsoft, welches als Einzel- und Mehrplatzsystem unter dem Betriebssystem Windows läuft. Seine wichtigsten Eigenschaften:


Abbildung 9.3: Schemadefinition in Microsoft Access

Abbildung 9.4 zeigt die interaktiv formulierte Abfrage, die zu jedem Professor seine Studenten ermittelt. Daraus wird die SQL-Syntax in Listing 9.1a erzeugt. Aus den Treffern dieser Query wird der Bericht in Abbildung 9.5 generiert.


Abbildung 9.4: in Microsoft Access formulierte Abfrage

Listing 9.1a: generierte Abfrage, wird verwendet für Bericht in Abbildung 9.6
SELECT DISTINCT p.name AS Professor, s.name AS Student
FROM  professoren p, vorlesungen v, hoeren h, studenten s
WHERE v.gelesenvon = p.persnr
and   h.vorlnr     = v.vorlnr
and   h.matrnr     = s.matrnr
ORDER BY p.name, s.name


Abbildung 9.5: Word-Ausgabe eines Microsoft Access-Berichts, basierend auf Listing 9.1a

Listing 9.1b: Abfrage zur Ermittlung der Lehrbelastung
SELECT p.Name, sum(v.SWS) AS Lehrbelastung
FROM   Vorlesungen AS v, Professoren AS p
WHERE  v.gelesenVon=p.PersNr
GROUP  BY p.name;


Abbildung 9.6: Tortendiagramm, erstellt aus den Treffern zur Abfrage in Listing 9.1b


Abbildung 9.7: interaktiv zusammengestelltes Eingabeformular

Listing 9.1c: Visual Basic Script, dem Button Rangältester aus Abbildung 9.8 zugeordnet
Private Sub Befehl8_Click()

    Dim rang As String

    Select Case gehaltsgruppe.Value
    Case 1
        rang = "C2"
    Case 2
        rang = "C3"
    Case 3
        rang = "C4"
    Case Else
        rang = " "
    End Select

    If rang = " " Then
        MsgBox ("Sie haben keinen Rang angegeben")
    Else
        Dim rs As Recordset
        Set rs = CurrentDb.OpenRecordset("Select name, gebdatum " & _
        "from professoren where gebdatum = " & _
        "(select min(gebdatum) from professoren where rang = '" & rang & "')")
        ausgabe.Value = rs.Fields("name").Value & _
        ", geboren am " & rs.Fields("gebdatum")
    End If

End Sub


Abbildung 9.8: Formular mit VBA-Skript-Funktionalität


prev up next