PRIMARY( )-Funktion

Gibt Wahr (.T.) zurück, wenn es sich bei einem Index um einen Primärindex handelt; andernfalls wird Falsch (.F.) zurückgegeben.

PRIMARY([nIndexNumber] [, nWorkArea | cTableAlias])

Rückgabewerte

Logisch

Parameter

  • nIndexNumber
    Gibt die Nummer des Indexes an, für den PRIMARY( ) den Primärindex-Status ermittelt. PRIMARY( ) ermittelt den Primärindex-Status entsprechend der folgenden Reihenfolge, wenn nIndexNumber von 1 bis zur Gesamtzahl der strukturierten Mehrfachindex- und unabhängigen Mehrfachindex-Dateien vergrößert wird.
  1. Zunächst wird der Primärindex-Status für jeden Index ermittelt, der sich in dem strukturierten Mehrfachindex befindet (sofern dieser vorhanden ist). Für die Statusermittlung wird die Reihenfolge berücksichtigt, in der die Indizes, die in dem strukturierten Mehrfachindex verwaltet werden, erstellt wurden.

  2. Danach wird der Primärindex-Status für jeden Index ermittelt, der sich in einem geöffneten unabhängigen Mehrfachindex befindet. Für die Statusermittlung wird die Reihenfolge berücksichtigt, in der die Indizes, die in dem jeweiligen unabhängigen Mehrfachindex verwaltet werden, erstellt wurden.

    Wenn Sie nIndexNumber nicht angeben, überprüft PRIMARY( ) den Hauptindex daraufhin, ob er ein Primärindex ist. Wenn kein Hauptindex vorhanden ist, gibt PRIMARY( ) den Wert Falsch (.F.) zurück.

  • nWorkArea
    Gibt den Arbeitsbereich des Indexes an, der mit nIndexNumber angegeben ist.

  • cTableAlias
    Gibt den Arbeitsbereich des Indexes an, der mit nIndexNumber angegeben ist.

    Wenn Sie nWorkArea bzw. cTableAlias nicht angeben, überprüft PRIMARY( ), ob der Index, der dem derzeit ausgewählten Arbeitsbereich zugeordnet ist, ein Primärindex ist.

Beispiel

Im folgenden Beispiel wird die Tabelle customer in der Datenbank geöffnet. Mittels FOR ... ENDFOR wird eine Schleife erstellt, in welcher der Primärstatus jedes Indexnamens im Strukturindex von customer überprüft wird. Der Name jedes strukturierten Indexnamens wird mit seinem Primärstatus angezeigt.

CLOSE DATABASES
SET PATH TO (HOME(2) + 'Data\')   && Sets path to database
OPEN DATABASE testdata  && Open testdata database
USE Customer     && Open customer table

FOR nCount = 1 TO 254
   IF !EMPTY(TAG(nCount))  && Checks for tags in the index
   ? TAG(nCount)  && Display tag name
   ? PRIMARY(nCount)     && Display primary status
   ELSE
      EXIT  && Exit the loop when no more tags are found
   ENDIF
ENDFOR

Siehe auch

ALTER TABLE – SQL-Befehl | CANDIDATE( ) | CREATE TABLE – SQL | INDEX