Ansicht
Dokumentation

ABENDDIC_DATABASE_TABLES_KEY - DDIC DATABASE TABLES KEY

ABENDDIC_DATABASE_TABLES_KEY - DDIC DATABASE TABLES KEY

BAL Application Log Documentation   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- Schlüsselfelder von Datenbanktabellen

In der Struktur einer DDIC-Datenbanktabelle muss mindestens eine Tabellenfeld als Schlüsselfeld gekennzeichnet sein. Die als Schlüsselfelder gekennzeichneten Tabellenfelder bilden den Primärschlüssel der Tabelle. Die Schlüsselfelder einer Tabelle müssen zusammenhängend am Anfang der Tabelle stehen, d.h. es darf kein Nicht-Schlüsselfeld zwischen zwei Schlüsselfeldern stehen. Der durch die Schlüsselfelder gebildete Primärschlüssel identifiziert eine Tabellenzeile eindeutig. Wenn andere Kombinationen von Tabellenfeldern eine Tabellenzeile eindeutig identifizieren nennt man diese Schlüsselkandidaten. Für den Primärschlüssel der Tabelle wird deren Primärindex angelegt, der einen optimierten Schlüsselzugriff auf die Tabellenzeilen unter Angabe von Werten für die Schlüsselfelder erlaubt.

Es sind maximal 16 Schlüsselfelder pro Tabelle zulässig. Die Anzahl von Bytes aller Schlüsselfelder darf auf der Datenbank maximal 900 sein. Wenn die Anzahl größer als 120 ist gelten aber folgende Einschränkungen:

  • Ein Transport von Tabelleninhalten kann nicht durch die vollständige Angabe von Schlüsselwerten erfolgen, sondern nur durch die Angabe generischer Schlüsselwerte mit einer maximalen Summe der Bytes bzw. Zeichen von 120.
  • Die Tabelle kann nicht als Basistabelle eines Sperrobjekts benutzt werden.

Folgende eingebauten Datentypen sind nicht für Schlüsselfelder erlaubt: die obsoleten DF16_SCL und DF34_SCL sowie FLTP, STRING, RAWSTRING, LCHR, LRAW und GEOM_EWKB. Ein Schlüsselfeld vom Typ RAW darf nicht länger als 69 Bytes sein.

Hinweise

  • Die Begrenzung der Schlüsselfelder ist so gewählt, dass die Anforderungen aller unterstützten Datenbankplattformen erfüllt werden. SAP-intern können Tabellen so gekennzeichnet werden, dass diese Grenzen bei Erweiterungen potenziell überschritten werden können. Ein Zugriff auf solcherart gekennzeichnete Tabellen mit führt zu einer Syntaxwarnung der erweiterten Programmprüfung, die darauf hinweist, dass gegebenenfalls eine plattformunabhängige Ersatzimplementierung vorgenommen werden muss. Mit der Klasse CL_ABAP_DBFEATURES kann festgestellt werden, welche Grenzen das aktuelle Datenbanksystem unterstützt.
  • In Schlüsselfelder können keine Null-Werte eingefügt werden. Ein entsprechender Versuch führt immer zu einer Ausnahme auf der Datenbank.





RFUMSV00 - Advance Return for Tax on Sales/Purchases   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 3790 Date: 20240523 Time: 182745     sap01-206 ( 65 ms )