--- layout: docu title: Values --- The value class represents a single value of any type. ## API Reference Overview
void duckdb_destroy_value(duckdb_value *value);
duckdb_value duckdb_create_varchar(const char *text);
duckdb_value duckdb_create_varchar_length(const char *text, idx_t length);
duckdb_value duckdb_create_bool(bool input);
duckdb_value duckdb_create_int8(int8_t input);
duckdb_value duckdb_create_uint8(uint8_t input);
duckdb_value duckdb_create_int16(int16_t input);
duckdb_value duckdb_create_uint16(uint16_t input);
duckdb_value duckdb_create_int32(int32_t input);
duckdb_value duckdb_create_uint32(uint32_t input);
duckdb_value duckdb_create_uint64(uint64_t input);
duckdb_value duckdb_create_int64(int64_t val);
duckdb_value duckdb_create_hugeint(duckdb_hugeint input);
duckdb_value duckdb_create_uhugeint(duckdb_uhugeint input);
duckdb_value duckdb_create_varint(duckdb_varint input);
duckdb_value duckdb_create_decimal(duckdb_decimal input);
duckdb_value duckdb_create_float(float input);
duckdb_value duckdb_create_double(double input);
duckdb_value duckdb_create_date(duckdb_date input);
duckdb_value duckdb_create_time(duckdb_time input);
duckdb_value duckdb_create_time_tz_value(duckdb_time_tz value);
duckdb_value duckdb_create_timestamp(duckdb_timestamp input);
duckdb_value duckdb_create_timestamp_tz(duckdb_timestamp input);
duckdb_value duckdb_create_timestamp_s(duckdb_timestamp_s input);
duckdb_value duckdb_create_timestamp_ms(duckdb_timestamp_ms input);
duckdb_value duckdb_create_timestamp_ns(duckdb_timestamp_ns input);
duckdb_value duckdb_create_interval(duckdb_interval input);
duckdb_value duckdb_create_blob(const uint8_t *data, idx_t length);
duckdb_value duckdb_create_bit(duckdb_bit input);
duckdb_value duckdb_create_uuid(duckdb_uhugeint input);
bool duckdb_get_bool(duckdb_value val);
int8_t duckdb_get_int8(duckdb_value val);
uint8_t duckdb_get_uint8(duckdb_value val);
int16_t duckdb_get_int16(duckdb_value val);
uint16_t duckdb_get_uint16(duckdb_value val);
int32_t duckdb_get_int32(duckdb_value val);
uint32_t duckdb_get_uint32(duckdb_value val);
int64_t duckdb_get_int64(duckdb_value val);
uint64_t duckdb_get_uint64(duckdb_value val);
duckdb_hugeint duckdb_get_hugeint(duckdb_value val);
duckdb_uhugeint duckdb_get_uhugeint(duckdb_value val);
duckdb_varint duckdb_get_varint(duckdb_value val);
duckdb_decimal duckdb_get_decimal(duckdb_value val);
float duckdb_get_float(duckdb_value val);
double duckdb_get_double(duckdb_value val);
duckdb_date duckdb_get_date(duckdb_value val);
duckdb_time duckdb_get_time(duckdb_value val);
duckdb_time_tz duckdb_get_time_tz(duckdb_value val);
duckdb_timestamp duckdb_get_timestamp(duckdb_value val);
duckdb_timestamp duckdb_get_timestamp_tz(duckdb_value val);
duckdb_timestamp_s duckdb_get_timestamp_s(duckdb_value val);
duckdb_timestamp_ms duckdb_get_timestamp_ms(duckdb_value val);
duckdb_timestamp_ns duckdb_get_timestamp_ns(duckdb_value val);
duckdb_interval duckdb_get_interval(duckdb_value val);
duckdb_logical_type duckdb_get_value_type(duckdb_value val);
duckdb_blob duckdb_get_blob(duckdb_value val);
duckdb_bit duckdb_get_bit(duckdb_value val);
duckdb_uhugeint duckdb_get_uuid(duckdb_value val);
char *duckdb_get_varchar(duckdb_value value);
duckdb_value duckdb_create_struct_value(duckdb_logical_type type, duckdb_value *values);
duckdb_value duckdb_create_list_value(duckdb_logical_type type, duckdb_value *values, idx_t value_count);
duckdb_value duckdb_create_array_value(duckdb_logical_type type, duckdb_value *values, idx_t value_count);
duckdb_value duckdb_create_map_value(duckdb_logical_type map_type, duckdb_value *keys, duckdb_value *values, idx_t entry_count);
duckdb_value duckdb_create_union_value(duckdb_logical_type union_type, idx_t tag_index, duckdb_value value);
idx_t duckdb_get_map_size(duckdb_value value);
duckdb_value duckdb_get_map_key(duckdb_value value, idx_t index);
duckdb_value duckdb_get_map_value(duckdb_value value, idx_t index);
bool duckdb_is_null_value(duckdb_value value);
duckdb_value duckdb_create_null_value();
idx_t duckdb_get_list_size(duckdb_value value);
duckdb_value duckdb_get_list_child(duckdb_value value, idx_t index);
duckdb_value duckdb_create_enum_value(duckdb_logical_type type, uint64_t value);
uint64_t duckdb_get_enum_value(duckdb_value value);
duckdb_value duckdb_get_struct_child(duckdb_value value, idx_t index);
char *duckdb_value_to_string(duckdb_value value);
void duckdb_destroy_value(
duckdb_value *value
);
duckdb_value duckdb_create_varchar(
const char *text
);
duckdb_value duckdb_create_varchar_length(
const char *text,
idx_t length
);
duckdb_value duckdb_create_bool(
bool input
);
duckdb_value duckdb_create_int8(
int8_t input
);
duckdb_value duckdb_create_uint8(
uint8_t input
);
duckdb_value duckdb_create_int16(
int16_t input
);
duckdb_value duckdb_create_uint16(
uint16_t input
);
duckdb_value duckdb_create_int32(
int32_t input
);
duckdb_value duckdb_create_uint32(
uint32_t input
);
duckdb_value duckdb_create_uint64(
uint64_t input
);
duckdb_value duckdb_create_int64(
int64_t val
);
duckdb_value duckdb_create_hugeint(
duckdb_hugeint input
);
duckdb_value duckdb_create_uhugeint(
duckdb_uhugeint input
);
duckdb_value duckdb_create_varint(
duckdb_varint input
);
duckdb_value duckdb_create_decimal(
duckdb_decimal input
);
duckdb_value duckdb_create_float(
float input
);
duckdb_value duckdb_create_double(
double input
);
duckdb_value duckdb_create_date(
duckdb_date input
);
duckdb_value duckdb_create_time(
duckdb_time input
);
duckdb_value duckdb_create_time_tz_value(
duckdb_time_tz value
);
duckdb_value duckdb_create_timestamp(
duckdb_timestamp input
);
duckdb_value duckdb_create_timestamp_tz(
duckdb_timestamp input
);
duckdb_value duckdb_create_timestamp_s(
duckdb_timestamp_s input
);
duckdb_value duckdb_create_timestamp_ms(
duckdb_timestamp_ms input
);
duckdb_value duckdb_create_timestamp_ns(
duckdb_timestamp_ns input
);
duckdb_value duckdb_create_interval(
duckdb_interval input
);
duckdb_value duckdb_create_blob(
const uint8_t *data,
idx_t length
);
duckdb_value duckdb_create_bit(
duckdb_bit input
);
duckdb_value duckdb_create_uuid(
duckdb_uhugeint input
);
bool duckdb_get_bool(
duckdb_value val
);
int8_t duckdb_get_int8(
duckdb_value val
);
uint8_t duckdb_get_uint8(
duckdb_value val
);
int16_t duckdb_get_int16(
duckdb_value val
);
uint16_t duckdb_get_uint16(
duckdb_value val
);
int32_t duckdb_get_int32(
duckdb_value val
);
uint32_t duckdb_get_uint32(
duckdb_value val
);
int64_t duckdb_get_int64(
duckdb_value val
);
uint64_t duckdb_get_uint64(
duckdb_value val
);
duckdb_hugeint duckdb_get_hugeint(
duckdb_value val
);
duckdb_uhugeint duckdb_get_uhugeint(
duckdb_value val
);
duckdb_varint duckdb_get_varint(
duckdb_value val
);
duckdb_decimal duckdb_get_decimal(
duckdb_value val
);
float duckdb_get_float(
duckdb_value val
);
double duckdb_get_double(
duckdb_value val
);
duckdb_date duckdb_get_date(
duckdb_value val
);
duckdb_time duckdb_get_time(
duckdb_value val
);