Skip to content

Latest commit

 

History

History
57 lines (39 loc) · 2.68 KB

types.md

File metadata and controls

57 lines (39 loc) · 2.68 KB
shorty synopsis status
Built-in Types
Find here a brief overview of the predefined types shipped with CDS.
released

Built-in Types

The following built-in types are provided:

CDS Type Arguments / Remarks Example Value SQL (6)
UUID an opaque string (1) 'be071623-8699-4106-...' NVARCHAR(36)
Boolean true BOOLEAN
UInt8 (2) 133 TINYINT
Int16 1337 SMALLINT
Int32 1337 INTEGER
Integer 1337 INTEGER
Int64 1337 BIGINT
Integer64 1337 BIGINT
Decimal (precision, scale) (3) 15.2 DECIMAL
Double 15.2 DOUBLE
Date '2021-06-27' DATE
Time '07:59:59' TIME
DateTime sec precision '2021-06-27T14:52:23Z' TIMESTAMP
Timestamp µs precision (4) '2021-06-27T14:52:23.123Z' TIMESTAMP
String (length ) (5) 'hello world' NVARCHAR
Binary (length) (5) VARBINARY
LargeBinary BLOB
LargeString 'hello world' NCLOB

Remarks

(1) At runtime, UUIDs are treated as opaque values and are, for example, not converted to lower case on input. UUIDs generated in the application are RFC 4122-compliant. See Don't Interpret UUIDs! for details.

(2) Not supported on PostgreSQL, as there is no TINYINT. Not supported on H2, as TINYINT is signed on H2. Use Int16 instead.

(3) Arguments precision and scale are optional → if omitted a decfloat type is used

(4) Up to 7 digits of fractional seconds; if a data is given with higher precision truncation may occur

(5) Argument length is optional → use options cds.cdsc.defaultStringLength and cds.cdsc.defaultBinaryLength to control the project-specific default length used for OData and SQL backends. The default length is 5000 for SAP HANA and 255 for all other SQL backends. Note that default lengths are only applied on database level. Specify fixed lengths to get length checks on service level and/or inbound data.

(6) Mapping to ANSI SQL types are given for comparison. Note though, that you need to have the specification of your target database in mind when considering, for example, length restrictions.

See also...

Mapping to OData EDM types{.learn-more}

HANA-native Data Types{.learn-more}