Freigeben über


SET FIELDS-Befehl

Gibt an, auf welche Felder einer Tabelle zugegriffen werden kann.

SET FIELDS ON | OFF | LOCAL | GLOBAL

- oder -

SET FIELDS TO [[FieldName1 [, FieldName2 ...]]
    | ALL [LIKE Skeleton | EXCEPT Skeleton]]

Parameter

  • ON
    Gibt an, dass nur auf die Felder der Feldliste zugegriffen werden kann.

  • OFF
    (Standardeinstellung) Gibt an, dass auf alle Felder der aktuellen Tabelle zugegriffen werden kann.

  • LOCAL
    Gibt an, dass nur auf die Felder im aktuellen Arbeitsbereich zugegriffen werden kann, die in der Feldliste aufgeführt sind.

  • GLOBAL
    Gibt an, dass auf alle Felder der Feldliste, einschließlich Felder in anderen Arbeitsbereichen, zugegriffen werden kann.

    Mit SET FIELDS GLOBAL können Sie auf Felder in anderen Arbeitsbereichen zugreifen, ohne SET COMPATIBLE TO DB4 einzugeben.

  • TO [FieldName1 [, FieldName2 ...]]
    Gibt die Namen der Felder an, auf die in der aktuellen Tabelle zugegriffen werden kann. In den folgenden Fällen müssen Sie dem Feldnamen einen Alias hinzufügen:

    • Wenn sich das Feld in einer Tabelle befindet, die nicht im gerade gewählten Arbeitsbereich geöffnet ist.
    • Wenn in zwei oder mehr Tabellen identische Feldnamen vorhanden sind.

    Sie können Felder aus Tabellen einbeziehen, die in anderen Arbeitsbereichen geöffnet sind, sofern vor jedem Feldnamen der Alias der entsprechenden Tabelle steht. Auf diese Felder kann jedoch erst zugegriffen werden, nachdem SET FIELDS GLOBAL oder SET COMPATIBLE DB4 eingegeben worden ist.

    Es ist möglich, dass die Feldliste Anweisungen zum Erstellen von berechneten Feldern enthält. Berechnete Felder enthalten schreibgeschützte Daten, die mit Hilfe eines Ausdrucks erstellt wurden. Dabei kann es sich um einen beliebigen Ausdruck handeln, der jedoch ein gültiger FoxPro-Ausdruck sein muss. Auf berechnete Felder kann erst zugegriffen werden, nachdem SET FIELDS GLOBAL oder SET COMPATIBLE DB4 eingegeben worden ist.

    Eine Anweisung, die ein berechnetes Feld erstellt, hat folgendes Format:

    <calculated field name> = <expr>
    

    In diesem Beispiel wird ein berechnetes Feld mit dem Namen LOCATION erstellt:

    CLOSE DATABASES
    USE customer
    SET FIELDS TO LOCATION = ALLTRIM(city) + ', ' + state
    

    CITY und STATE sind die Namen von Feldern aus der gewählten Tabelle.

  • ALL
    Ermöglicht den Zugriff auf alle Felder der aktuellen Tabelle.

  • ALL LIKE Skeleton | EXCEPT Skeleton
    Sie können selektiv auf Felder zugreifen, indem Sie eine der Klauseln LIKE oder EXCEPT oder auch beide angeben. Wenn Sie LIKE Skeleton angeben, können Sie auf die Felder zugreifen, die mit Skeleton übereinstimmen. Wenn Sie EXCEPT Skeleton angeben, können Sie auf alle Felder zugreifen, außer denen, die mit Skeleton übereinstimmen.

    Der mit Skeleton angegebene Ausdruck unterstützt Platzhalter wie * und ?. Wenn Sie beispielsweise auf Felder zugreifen möchten, deren Namen mit den Buchstaben "A" oder "P" anfangen, geben Sie Folgendes ein:

    SET FIELDS TO ALL LIKE A*,P*
    

    Die LIKE-Klausel kann mit der EXCEPT-Klausel kombiniert werden:

    SET FIELDS TO ALL LIKE A*,P* EXCEPT PARTNO*
    

Hinweise

SET FIELDS TO ist additiv, d. h., durch die Eingabe von SET FIELDS TO mit einer Feldliste werden die angegebenen Felder zu denen hinzugefügt, auf die gerade ein Zugriff besteht.

Durch Eingeben des SET FIELDS TO-Befehls wird implizit auch der SET FIELDS ON-Befehl ausgeführt. Die Eingabe von SET FIELDS TO ohne weitere Argumente führt implizit den SET FIELDS OFF-Befehl aus. SET FIELDS TO ohne Feldliste oder die ALL-Option entfernt für die aktuelle Tabelle alle Felder aus der Feldliste.

SET FIELDS gilt für die aktuelle Datensitzung.

Siehe auch

SET FILTER | SET DATASESSION | SET COMPATIBLE-Befehl