[Eine Seite zurück] [Übersicht] [Eine Seite vor]

Benutzung auf eigene Gefahr !
Keine Garantie für garnichts !

Exsitenz eines Indexes/Primärschlüssels prüfen

Sprache / Programm: Access ab Version 95
Beschreibung

Prüft, ob die angegebene Tabelle einen Index mit diesem Namen hat.

VBA-Quelltext
Public Function IndexExistiert(TabName As String, IndexName As String) As Boolean
    Dim IndexNr As Byte
    ' Enthält die Tabelle überhaupt Index-Felder ?
    IndexExistiert = CurrentDb.TableDefs(TabName).Indexes.Count > 0
    If Not IndexExistiert Then Exit Function
    ' Alle Namen aller Indizes vergleichen
    For IndexNr = 0 To CurrentDb.TableDefs(TabName).Indexes.Count - 1
        If (CurrentDb.TableDefs(TabName).Indexes(IndexNr).Name = IndexName) Then Exit Function
    Next IndexNr
    IndexExistiert = False
End Function
Argumente der Funktion/Prozedur

TabName

Name der Access-Tabelle

IndexName

Name des Indexes. Dieser Name in der Entwurfsansicht einer Tabelle im Menü 'Ansicht' Menüpunkt 'Indizes' in der Spalte 'Indexname' nachgesehen werden.
Verwendete Variable

IndexNr. Zähler (Laufende Nummer des Indexes)

Rückgabewert

Wahrheitswert, ob der angegebene Index in der Tabelle existiert.

Hinweis

Die Funktion 'SpalteHatIndex' liefert zu einem Tabellen- und Spaltennamen den Indexnamen.

Anwendungsgebiete, Fehler und Warnungen

Die Existenz der Tabelle und der Spalte wird nicht überprüft, so dass ein Fehler auftritt, wenn die Spalte nicht vorhanden ist. Verwendet die DAO Objektbibliothek. Ab Access 2000 muss diese explizit im VBA-Editor über 'Extras' -> 'Verweise' als 'Microsoft DAO 3.6' (oder höher) eingebunden werden und vor die 'Microsoft ADO 2.1' (oder höher) Bibliothek gesetzt werden.