Primärschlüsselfelder von Tabellen ermitteln

30.12.2003

Über die Indexes Auflistung läßt sich der Primärschlüssel schnell ermitteln.

Viele Funktionen zum Suchen nach bestimmten Datensätzen benötigen Informationen über das Primärschlüsselfeld einer bestimmten Tabelle.

Die folgende Function-Prozedur erwartet beim Start den Namen einer Tabelle der aktuellen Datenbank. Die Tabelle muss hierbei im ACCESS-Format vorliegen. Das Ergebnis ist der Feldname des Primärschlüssels. Sollte der Primärschlüssel aus mehreren Feldern zusammengesetzt sein, gibt die Prozedur eine Werteliste zurück, bei der die einzelnen Feldnamen durch Semikola getrennt aufgelistet sind.

Function Primärschlüssel(Tabellenname As String) As String

    Dim DB As DAO.Database 
    Dim TableDefObj As DAO.TableDef 
    Dim IndexOb As DAO.Index 
    Dim FieldObj As Field 
    Dim Result As String

    On Error GoTo Err

    Set DB = CurrentDb()
    Set TableDefObj In TableDefs(Tabellenname)

    For Each IndexObj in TableDefObj.Indexes

        If IndexObj.Primary Then 
            For Each FieldObj In IndexObj.Fields 
                Result = Result & FieldObj.Name ";" 
            Next FielObj 
            If Len(Result) <> 0 Then 
                Result = Left(Result, Len(Result) - 1) 
                Primärschlüssel = Result 
                Exit Function 
            EndIf 
        EndIf

    Next IndexObj 

    Primärschlüssel = "" 
    Exit Function

Err: 
    Primärschlüssel = ""
    End Function

End Function

Dienstleistungen

Als starker Partner an Ihrer Seite unterstützen wir Sie in folgenden Breichen:

Access-Programmierung

Benötigen Sie Unterstützung bei der Programmierung von Access-Anwendungen? Wir bieten die gesamte Bandbreite von der Access-Programmierung auf Stundenbasis bis zur Durchführung eines Software-Projektes als Auftragsarbeit an. Kontaktieren Sie uns für ein kostenloses Erstgespräch.

Software-Beratung

Haben Sie ein Software-Projekt und Sie wissen nicht, ob Access die richtige Plattform ist? Wir haben über 20 Jahre Erfahrung beim Erstellen von Windows-, Web und mobilen Anwendungen. Kontaktieren Sie uns für eine kostenlose Erstberatung.