FSIZE( )-Funktion

Gibt die Größe einer bestimmten Datei oder eines bestimmten Feldes in Byte zurück.

FSIZE(cFieldName [, nWorkArea | cTableAlias] | cFileName)

Rückgabewerte

Numerisch

Parameter

  • cFieldName
    Gibt den Namen des Feldes an.

  • nWorkArea
    Gibt den Arbeitsbereich der Tabelle an, deren Größe von FSIZE( ) zurückgegeben wird.

    FSIZE( ) gibt den Wert 0 zurück, wenn im angegebenen Arbeitsbereich keine Tabelle geöffnet ist.

  • cTableAlias
    Gibt den Alias der Tabelle an, deren Größe von FSIZE( ) zurückgegeben wird.

    Visual FoxPro generiert eine Fehlermeldung, wenn Sie einen nicht vorhandenen Tabellenalias angeben.

  • cFileName
    Gibt die Datei an, deren Größe in Byte von FSIZE( ) zurückgegeben wird.

Hinweise

Ob FSIZE( ) die Größe eines Feldes oder einer Datei zurückgibt, hängt von der aktuellen Einstellung von SET COMPATIBLE ab. Wenn SET COMPATIBLE auf OFF oder auf FOXPLUS (Standardeinstellung) eingestellt ist, gibt FSIZE( ) die Größe eines Feldes zurück. Wenn SET COMPATIBLE auf ON oder DB4 (Standardeinstellung) eingestellt ist, gibt FSIZE( ) die Größe einer Datei zurück.

In der folgenden Tabelle werden die Standardfeldgrößen (in Byte) der einzelnen Feldtypen mit fester Länge aufgelistet.

Feldtyp Standardfeldgröße (in Byte)
Währung 8
Datum 8
DatumZeit 8
Double 8
Integer (Ganzzahl) 4
Logisch 1
Memo 4
Objektfeld 4

Die Größe eines Feldes kann mit DISPLAY STRUCTURE und LIST STRUCTURE angezeigt werden.

Wenn Sie die optionalen nWorkArea- und cTableAlias-Argumente nicht angeben, gibt FSIZE( ) die Feldgröße für ein Feld zurück, das sich in der aktuellen Tabelle und im aktuellen Arbeitsbereich befindet.

Beispiel

Im folgenden Beispiel wird FSIZE( ) dazu verwendet, um die Größe zweier Felder in der Tabelle customer zu ermitteln.

SET COMPATIBLE OFF
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE customer  && Open Customer table

CLEAR
? FSIZE('contact')  && Displays 30
? FSIZE('cust_id')  && Displays 6

Siehe auch

DISPLAY STRUCTURE | FCOUNT( ) | LIST