oh_data_value.h
概述
提供与单条数据值相关的函数和枚举。
从API version 18开始,OH_ColumnType从oh_cursor.h移动至此头文件呈现,对于此类型,API version 18之前即支持使用,各版本均可正常使用。
引用文件: <database/data/oh_data_value.h>
库: libnative_rdb_ndk.z.so
系统能力: SystemCapability.DistributedDataManager.RelationalStore.Core
起始版本: 18
相关模块:RDB
汇总
类型定义
| 名称 | 描述 |
|---|---|
| typedef enum OH_ColumnType OH_ColumnType | 表示列的类型。 |
| typedef struct OH_Data_Value OH_Data_Value | 定义OH_Data_Value结构类型。 |
枚举
| 名称 | 描述 |
|---|---|
| OH_ColumnType { TYPE_NULL = 0, TYPE_INT64, TYPE_REAL, TYPE_TEXT, TYPE_BLOB, TYPE_ASSET, TYPE_ASSETS, TYPE_FLOAT_VECTOR, TYPE_UNLIMITED_INT } |
表示列的类型。 |
函数
| 名称 | 描述 |
|---|---|
| OH_Data_Value * OH_Value_Create (void) | 创建OH_Data_Value实例,用于储存单条键值对数据。 |
| int OH_Value_Destroy (OH_Data_Value *value) | 销毁OH_Data_Value对象。 |
| int OH_Value_PutNull (OH_Data_Value *value) | 添加空数据。 |
| int OH_Value_PutInt (OH_Data_Value *value, int64_t val) | 添加整型数据。 |
| int OH_Value_PutReal (OH_Data_Value *value, double val) | 添加REAL类型数据。 |
| int OH_Value_PutText (OH_Data_Value *value, const char *val) | 添加字符串类型数据。 |
| int OH_Value_PutBlob (OH_Data_Value *value, const unsigned char *val, size_t length) | 添加BLOB类型数据。 |
| int OH_Value_PutAsset (OH_Data_Value *value, const Data_Asset *val) | 添加ASSET类型数据。 |
| int OH_Value_PutAssets (OH_Data_Value *value, const Data_Asset *const *val, size_t length) | 添加ASSETS类型数据。 |
| int OH_Value_PutFloatVector (OH_Data_Value *value, const float *val, size_t length) | 添加float数组类型数据。 |
| int OH_Value_PutUnlimitedInt (OH_Data_Value *value, int sign, const uint64_t *trueForm, size_t length) | 添加任意长度的整型数组数据。 |
| int OH_Value_GetType (OH_Data_Value *value, OH_ColumnType *type) | 获取数据类型。 |
| int OH_Value_IsNull (OH_Data_Value *value, bool *val) | 检查数据是否为空。 |
| int OH_Value_GetInt (OH_Data_Value *value, int64_t *val) | 获取整型数据。 |
| int OH_Value_GetReal (OH_Data_Value *value, double *val) | 获取REAL类型数据。 |
| int OH_Value_GetText (OH_Data_Value *value, const char **val) | 获取字符串类型数据。 |
| int OH_Value_GetBlob (OH_Data_Value *value, const uint8_t **val, size_t *length) | 获取BLOB类型数据。 |
| int OH_Value_GetAsset (OH_Data_Value *value, Data_Asset *val) | 获取ASSET类型数据。 |
| int OH_Value_GetAssetsCount (OH_Data_Value *value, size_t *length) | 获取ASSETS类型数据的大小。 |
| int OH_Value_GetAssets (OH_Data_Value *value, Data_Asset **val, size_t inLen, size_t *outLen) | 获取ASSETS类型数据。 |
| int OH_Value_GetFloatVectorCount (OH_Data_Value *value, size_t *length) | 获取float数组类型数据的大小。 |
| int OH_Value_GetFloatVector (OH_Data_Value *value, float *val, size_t inLen, size_t *outLen) | 获取float数组类型数据。 |
| int OH_Value_GetUnlimitedIntBand (OH_Data_Value *value, size_t *length) | 获取任意长度的整型数据的大小。 |
| int OH_Value_GetUnlimitedInt (OH_Data_Value *value, int *sign, uint64_t *trueForm, size_t inLen, size_t *outLen) | 获取任意长度的整型数据。 |