Firebird Documentation IndexFirebird 2.5 SprachreferenzSystemtabellen → RDB$FIELDS
Firebird Home Firebird Home Zurück: RDB$EXCEPTIONSFirebird Documentation IndexNach oben: SystemtabellenWeiter: RDB$FIELD_DIMENSIONS

RDB$FIELDS

RDB$FIELDS speichert Definitionen für Spalten und Domains, sowohl system- als auch benutzerdefiniert. Hier werden die detailierten Dateneigenschaften für alle Spalten gespeichert.

Anmerkung

Die Spalte RDB$FIELDS.RDB$FIELD_NAME zeigt auf RDB$RELATION_FIELDS.RDB$FIELD_SOURCE, nicht auf RDB$RELATION_FIELDS.RDB$FIELD_NAME.

Spaltenname Datentyp Beschreibung
RDB$FIELD_NAME CHAR(31) Der eindeutige Name der Domain. Wird durch den Benutzer festgelegt oder automatisch durch das System. Domains die durch das System erstellt wurden, beginnen mit dem Präfix 'RDB$'.
RDB$QUERY_NAME CHAR(31) Nicht in Verwendung
RDB$VALIDATION_BLR BLOB BLR Die Binärsprachenrepräsentation (BLR) des SQL-Ausdrucks, der die Prüfung der CHECK-Werte in der Domain angibt
RDB$VALIDATION_SOURCE BLOB TEXT Der originale Quelltext in SQL, der die Prüfung des CHECK-Wertes angibt
RDB$COMPUTED_BLR BLOB BLR Die Binärsprachenrepräsentation (BLR) des SQL-Ausdrucks, welchen der Datenbankserver verwendet, wenn auf COMPUTED BY-Spalten zugegriffen wird.
RDB$COMPUTED_SOURCE BLOB TEXT Der originale Quelltext der Anweisung, der die COMPUTED BY-Spalte definiert.
RDB$DEFAULT_VALUE BLOB BLR Der Standardwert, sofern vorhanden, für das Feld oder die Domain, in Binarsprachenrepräsentation (BLR).
RDB$DEFAULT_SOURCE BLOB TEXT Der Vorgabewert als Quelltext, als SQL-Konstante oder -Ausdruck.
RDB$FIELD_LENGTH SMALLINT Spaltengröße in Bytes. FLOAT, DATE, TIME, INTEGER beanspruchen 4 Bytes. DOUBLE PRECISION, BIGINT, TIMESTAMP und BLOB beanspruchen 8 Bytes. Für CHAR- und VARCHAR-Datentypen wird die größtmögliche Anzahl Bytes beansprucht, wenn eine String-Domain (Spalte) definiert wurde.
RDB$FIELD_SCALE SMALLINT Die negative Nummer, die die Präzision für DECIMAL- und NUMERIC-Spalten festlegt—die Anzahl der Stellen nach dem Dezimalkomma
RDB$FIELD_TYPE SMALLINT Code des Datentyps für die Spalte:
7 = SMALLINT
8 = INTEGER
10 = FLOAT
12 = DATE
13 = TIME
14 = CHAR
16 = BIGINT
27 = DOUBLE PRECISION
35 = TIMESTAMP
37 = VARCHAR
261 = BLOB
Codes für DECIMAL und NUMERIC sind die gleichen wie für Integer-Typen, da diese als solche gespeichert werden.
RDB$FIELD_SUB_TYPE SMALLINT

Geben den Untertyp für BLOB-Datentypen an:

0 - undefiniert
1 - Text
2 - BLR
3 - ACL
4 - für zukünftigen Gebrauch reserviert
5 - Enkodierte Tabellenmetadatenbeschreibung
6 - Speicherung der Details für übergreifende Datenbanktransaktionen, die abnormal beendet wurden.

Spezifikationen für die CHAR-Datentypen:

0 - untypisierte Daten
1 - feste Binärdaten

Spezifiziert einen bestimmten Datentyp für die Integer-Datentypen (SMALLINT, INTEGER, BIGINT) und für Festkomma-Zahlen (NUMERIC, DECIMAL):

0 oder NULL - der Datentyp passt zum Wert im Feld RDB$FIELD_TYPE
1 - NUMERIC
2 - DECIMAL

RDB$MISSING_VALUE BLOB BLR Nicht verwendet
RDB$MISSING_SOURCE BLOB TEXT Nicht verwendet
RDB$DESCRIPTION BLOB TEXT Beliebiger Kommentar für Domains (Tabellenspalten)
RDB$SYSTEM_FLAG SMALLINT Kennzeichen: der Wert 1 bedeutet, dass die Domain automatisch durch das System erstellt wurde, der Wert 0 bedeutet, die Domain wurde durch den Benutzer definiert.
RDB$QUERY_HEADER BLOB TEXT Nicht verwendet
RDB$SEGMENT_LENGTH SMALLINT Gibt die Länge der BLOB-Buffer in Bytes für BLOB-Spalten an. Verwendet NULL für alle anderen Datentypen.
RDB$EDIT_STRING VARCHAR(127) Nicht verwendet
RDB$EXTERNAL_LENGTH SMALLINT Die Länge der Spalte in Bytes, sofern diese zu einer externen Tabelle gehört. Für reguläre Tabellen immer NULL.
RDB$EXTERNAL_SCALE SMALLINT Der Skalierungsfaktor für Integer-Felder in einer externen Tabelle; repräsentiert die Potenz von 10, die mit dem Integer multipliziert wird
RDB$EXTERNAL_TYPE SMALLINT Der Datentype des Feldes, wie er in der externen Tabelle vorkommt:
7 = SMALLINT
8 = INTEGER
10 = FLOAT
12 = DATE
13 = TIME
14 = CHAR
16 = BIGINT
27 = DOUBLE PRECISION
35 = TIMESTAMP
37 = VARCHAR
261 = BLOB
RDB$DIMENSIONS SMALLINT Gibt die Anzahl der Dimensionen in einem Array an, sofern die Spalte als Array definiert wurde, sonst immer NULL.
RDB$NULL_FLAG SMALLINT Gibt an, ob die Spalte einen leeren Wert annehmen darf (das Feld enthält dann NULL) oder nicht (das Feld enthält dann den Wert 1
RDB$CHARACTER_LENGTH SMALLINT Die Länge für CHAR- oder VARCHAR-Spalten in Zeichen (nicht in Bytes)
RDB$COLLATION_ID SMALLINT Die Kennung der Collation-Sequenz für eine Zeichenspalte oder -Domain. Wurde dies nicht definiert ist der Feldwert 0
RDB$CHARACTER_SET_ID SMALLINT Die Kennung des Zeichensatzes für eine Zeichenspalte, eine BLOB TEXT-Spalte oder -Domain
RDB$FIELD_PRECISION SMALLINT Gibt die Gesamtzahl der Stellen für Festkomma-Datentypen (DECIMAL und NUMERIC) an. Der Wert ist 0 für Integer-Datentypen, NULL für alle anderen.

Zurück: RDB$EXCEPTIONSFirebird Documentation IndexNach oben: SystemtabellenWeiter: RDB$FIELD_DIMENSIONS
Firebird Documentation IndexFirebird 2.5 SprachreferenzSystemtabellen → RDB$FIELDS