Skip to content

ABAP Keyword Documentation →  ABAP Dictionary →  Classic Objects in ABAP Dictionary →  Database Tables →  Technical Attributes of Database Tables 

Structure-Specific Technical Attributes of Database Tables

The following technical attributes are mostly the same as those of a structure in ABAP Dictionary:

  • Table fields (columns)
A table field is a component of the structure of the database table and describes the name, the data type, and any semantic attributes of a field of a database table. A table field is a component of the structured data type of the table and the associated rules apply to the component name and component type, with the following restrictions:
  • The name of a table field can have a maximum of 16 characters, which is also important when including structures as include structures.
  • The name of a table field cannot be a reserved name. The reserved names that cannot be used are in the database table TRESE. This is also important when using include structures.
  • A table field always has one elementary data type. Reference types, substructures, and table types are not possible. The elementary data type is specified directly for the table field or by using a data element and is always based on a predefined type in ABAP Dictionary. A table field as a platform-specific type in the physical database table. For each platform, there is a mapping between the elementary types in ABAP Dictionary and the platform-specific types. If only Open SQL is used, this mapping is transparent for ABAP programmers and only the predefined types in ABAP Dictionary and their ABAP types are relevant for the ABAP program.
  • A table can have a maximum of 749 fields. The total of all field lengths is restricted to 8080 bytes. In the case of deep fields such as STRING, RAWSTRING, LRAW, and LCHR, only the references are counted and not the actual content.
  • Fields with the type CHAR can have a maximum of 1333 characters.
  • Any fields with the types LRAW or LCHR must be located at the end of the table and only one field of this type is permitted in each table. Furthermore, a field with the type INT2 or INT4 (for the maximum length of the field) must be located directly in front of this field.
  • Include structures
Structures (but not database tables or views) can be included in a database table as include structures. A structure can be included in a table only if all names of the components of the structure are no longer than 16 characters and if its components meet all other table field requirements above. In particular, an included structure cannot contain any substructures. Any naming conflicts must be bypassed by defining suffixes. As in regular structures, the include can be assigned the name of a group.
When a structure is included, all its fields can be flagged as key fields. The include structure must then be inserted in the existing key fields or directly after them. Individual fields of an included structure cannot themselves by key fields.
When an include structure is included, the flag for initial values can be set for the entire structure. In this case, those fields in the include structure for which this attribute is set also keep their attribute. If the flag for initial values is not set for the included include structure, none of its fields have this attribute.
The fields of an included include structure are still part of the structure. They can only be edited using the structure and any changes made to the structure are applied to all including database tables. The fields of an included include structure can also be transformed to direct fields of the database table that are no longer associated with the originally included structure.
  • Enhancement category
The same applies to the enhancement category of database tables as to the enhancement category of structures.

Other versions: 7.31 | 7.40 | 7.54


Notes

  • Database tables cannot be written to using nested structures because these structures are not possible in every supported database.

  • If it meets the prerequisites above, an existing structure can be transformed to a database table. Conversely, a database structure can also be transformed to a regular structure (this deletes the database object).