8.7. UUID Functions

8.7.1. CHAR_TO_UUID()

Available in

DSQL, PSQL

Added in

2.5

Syntax

  1. CHAR_TO_UUID (ascii_uuid)
Table 153. CHAR_TO_UUID Function Parameter
ParameterDescription

ascii_uuid

A 36-character representation of UUID. ‘-’ (hyphen) in positions 9, 14, 19 and 24; valid hexadecimal digits in any other positions, e.g. ‘A0bF4E45-3029-2a44-D493-4998c9b439A3’

Result type

CHAR(16) CHARACTER SET OCTETS

Description

Converts a human-readable 36-char UUID string to the corresponding 16-byte UUID.

Examples

  1. select char_to_uuid('A0bF4E45-3029-2a44-D493-4998c9b439A3') from rdb$database
  2. -- returns A0BF4E4530292A44D4934998C9B439A3 (16-byte string)
  3. select char_to_uuid('A0bF4E45-3029-2A44-X493-4998c9b439A3') from rdb$database
  4. -- error: -Human readable UUID argument for CHAR_TO_UUID must
  5. -- have hex digit at position 20 instead of "X (ASCII 88)"

See also

UUID_TO_CHAR(), GEN_UUID()

8.7.2. GEN_UUID()

Available in

DSQL, PSQL

Syntax

  1. GEN_UUID ()

Result type

CHAR(16) CHARACTER SET OCTETS

Description

Returns a universally unique ID as a 16-byte character string.

Example

  1. select gen_uuid() from rdb$database
  2. -- returns e.g. 017347BFE212B2479C00FA4323B36320 (16-byte string)

See also

UUID_TO_CHAR(), CHAR_TO_UUID()

8.7.3. UUID_TO_CHAR()

Available in

DSQL, PSQL

Added in

2.5

Syntax

  1. UUID_TO_CHAR (uuid)
Table 154. UUID_TO_CHAR Function Parameters
ParameterDescription

uuid

16-byte UUID

Result type

CHAR(36)

Description

Converts a 16-byte UUID to its 36-character, human-readable ASCII representation.

Examples

  1. select uuid_to_char(x'876C45F4569B320DBCB4735AC3509E5F') from rdb$database
  2. -- returns '876C45F4-569B-320D-BCB4-735AC3509E5F'
  3. select uuid_to_char(gen_uuid()) from rdb$database
  4. -- returns e.g. '680D946B-45FF-DB4E-B103-BB5711529B86'
  5. select uuid_to_char('Firebird swings!') from rdb$database
  6. -- returns '46697265-6269-7264-2073-77696E677321'

See also

CHAR_TO_UUID(), GEN_UUID()