Data Types

<< Click to Display Table of Contents >>

Navigation:  »No topics above this level«

Data Types

Previous pageReturn to chapter overviewNext page

Some comments on Data Types/Field Types

Some of the available Absolute Database field types and data types may need some comments.


This is a narrow 8-bit signed integer type ranging from -128 to 127.
Exporting to delimited text this field type is tagged as the wider 16-bit signed SMALLINT ranging from -32768 to 32767.

However, if selected, the AbsoluteSQL may still import and type the destination field to be of this narrow SHORTINT type.

BYTE (not to be mistaken for BYTES)

This is a narrow 8-bit unsigned integer type ranging from 0 to 255.
Exporting to delimited text this field type is tagged as the wider 16-bit unsigned WORD ranging from 0 to 65535.

However, if selected, the AbsoluteSQL may still import and type the destination field to be of this narrow BYTE type.


This is an extended precision (19 significant digits) floating point type, which however in the 32-bit Delphi environment will limit to 15 significant digits, though not changing the value itself except in some cases narrowing the precision.

When exported this will limit to 15 significant digits as well as being tagged as a 15 digit precision FLOAT type.

If selected, the AbsoluteSQL may still import and type the destination field to be of this EXTENDED type.


In some other database systems this may be used as time stamp, that for each record are automatically updated when ever the individual record is updated - thus a non-editable data field.

In some other database systems this, with or without auto-updating, may be used as a UTC-linked DateTime field being displayed with auto-conversion according to the local time zone offset.

However, in Absolute Database, this field is plain editable and in reality equivalent to the DATETIME field type, possibly to comply with the BDE field type TimeStamp embracing both the Paradox TimeStamp and equalling with the dBase DateTime field type.

TIMESTAMP / DATETIME and milli seconds

Both these fields do receive milliseconds if entered through the DBGrid interface (Table View or SQL Live Request) as well as through Delimited Text Import but do not display unless selecting the mS display option via the Options menu.
Exports however, will include mS values irrespective of the mS display selection.

LOGICAL / Boolean / True-False data

Values of Logical True/False fields will display as "True" and "False" respectively, and as blanks for NULL values/states.
In Absolute Database the True/False terms are irrespective of the current System language setting.


The currency data type stores the curency values as floating point values. The currency unit is just present at display time reflecting the System setting and is not stored with the values! Hence, porting at Yen based currency table to a US-location or vice versa may come as a great surprise to either you or your customer. So, never use the Currency data type if dealing internationally!

Bytes and VarBytes

Bytes and VarBytes fields are mainly for special purposes as e.g. bar codes or other short binary data of more or less fixed length.
Bytes data may be imported via the Delimited Text Import (from hexadecimal strings), but are otherwise not handled by the current version of AbsoluteSQL.

GUID values

The GUID nomer stand for Globally Unique IDentifier and is a pseudo random number used for various issues. As there is no centralized tracking on the GUID generation, there is no 100 % guarantee against two identical GUIDs being created by independent issuers. However, because of the very high number of variations, it is extremely unlikely two issuers will generate the same number by chance.
The GUID is composed by one 4-byte word, two dual byte words ad eight single byte words, as e.g. in hexadecimals:
3F5204E0 4F89 11D3 9A 0C 03 05 E8 2C 33 01

NULL values

As a general feature of the Absolute Database it can deal with NULL "values" (actually rather a state than a value) for any type of data field.
NULL values in the data grid display will show as blank cells.
For string/character fields a NULL value is equal to zero length strings - however, cells containing only non visible space character(s) will not be considered NULL values except when (re)imported via Delimited Text Import.

NULL values and other databases

Unfortunately some databases do not deal with NULL states for logical fields.

MS Access and logical fields

For logical fields MS Access accepts only True and False values defaulting the field as False - so, don't use the Yes/No/True/False fields for data collection in MS Access.
Access internally stores True values as -1 and False values as 0, however exporting as 1 and 0 respectively.
The True/False - Yes/No - On/Off table displays depending on language settings.
As an alternative with Access you should use Integer fields as source fields for Form check boxes enabling the optional NULL state for the check box (Triple State) - however not applicable for Access table view check boxes. Exporting Access True/False check box form fields based on Integer fields the values will export as -1, 0, blanks for True/False/Null respectively.

AbsoluteSQL Application Manual - 13 March 2023 - Copyright © 2011 - 2023 Niels Knabe