• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# RDB
2
3
4## 概述
5
6关系型数据库(Relational Database,RDB)是一种基于关系模型来管理数据的数据库。关系型数据库基于SQLite组件提供了一套完整的 对本地数据库进行管理的机制,对外提供了一系列的增、删、改、查等接口,也可以直接运行用户输入的SQL语句来满足复杂的场景需要。
7
8**系统能力:** SystemCapability.DistributedDataManager.RelationalStore.Core
9
10**起始版本:** 10
11
12
13## 汇总
14
15
16### 文件
17
18| 名称 | 描述 |
19| -------- | -------- |
20| [oh_cursor.h](oh__cursor_8h.md) | 提供通过查询数据库生成的数据库结果集的访问方法。<br/>**引用文件:** <database/rdb/oh_cursor.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
21| [oh_data_value.h](oh__data__value_8h.md) | 提供与单条数据值相关的函数和枚举。<br/>从API version 18开始,OH_ColumnType从oh_cursor.h移动至此头文件呈现,对于此类型,API version 18之前即支持使用,各版本均可正常使用。<br/>**引用文件:** <database/rdb/oh_data_value.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
22| [oh_data_values.h](oh__data__values_8h.md) | 提供与多条数据值相关的函数和枚举。<br/>**引用文件:** <database/rdb/oh_data_values.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
23| [oh_data_values_buckets.h](oh__data__values__buckets_8h.md) | 提供与存储数据值相关的结构定义、函数和枚举。<br/>**引用文件:** <database/rdb/oh_data_values_buckets.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
24| [oh_predicates.h](oh__predicates_8h.md) | 表示关系型数据库(RDB)的谓词。<br/>**引用文件:** <database/rdb/oh_predicates.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
25| [oh_rdb_transaction.h](oh__rdb__transaction_8h.md) | 提供与数据库事务相关的函数和枚举。<br/>**引用文件:** <database/rdb/oh_rdb_transaction.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
26| [oh_rdb_types.h](oh__rdb__types_8h.md) | 提供与数据值相关的类型定义。<br/>**引用文件:** <database/rdb/oh_rdb_types.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
27| [oh_value_object.h](oh__value__object_8h.md) | 提供类型转换方法。<br/>**引用文件:** <database/rdb/oh_value_object.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
28| [oh_values_bucket.h](oh__values__bucket_8h.md) | 用于存储键值对的类型。<br/>**引用文件:** <database/rdb/oh_values_bucket.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
29| [relational_store.h](relational__store_8h.md) | 提供管理关系数据库(RDB)方法的接口,未标注支持向量数据库的接口仅支持关系型数据库。<br/>**引用文件:** <database/rdb/relational_store.h><br/>**库:** libnative_rdb_ndk.z.so<br/> |
30| [relational_store_error_code.h](relational__store__error__code_8h.md) | 声明关系型数据库(RDB)的错误码信息。<br/>**引用文件:** <database/rdb/relational_store_error_code.h><br/>**库:** libnative_rdb_ndk.z.so |
31
32
33### 结构体
34
35| 名称 | 描述 |
36| -------- | -------- |
37| [OH_Cursor](_o_h___cursor.md) | 表示结果集。 |
38| [OH_Predicates](_o_h___predicates.md) | 表示谓词。 |
39| [OH_VObject](_o_h___v_object.md) | 表示允许的数据字段类型。 |
40| [OH_VBucket](_o_h___v_bucket.md) | 用于存储键值对的类型。 |
41| [OH_Rdb_Config](_o_h___rdb___config.md) | 管理关系数据库配置。 |
42| [OH_Rdb_Store](_o_h___rdb___store.md) | 表示数据库类型。 |
43| [Rdb_DistributedConfig](_rdb___distributed_config.md) | 记录表的分布式配置信息。 |
44| [Rdb_KeyInfo](_rdb___key_info.md) | 描述发生变化的行的主键或者行号。 |
45| [Rdb_KeyInfo::Rdb_KeyData](union_rdb___key_info_1_1_rdb___key_data.md) | 存放变化的具体数据。 |
46| [Rdb_ChangeInfo](_rdb___change_info.md) | 记录端云同步过程详情。 |
47| [Rdb_SubscribeCallback](union_rdb___subscribe_callback.md) | 表示回调函数。 |
48| [Rdb_DataObserver](_rdb___data_observer.md) | 表示数据观察者。 |
49| [Rdb_Statistic](_rdb___statistic.md) | 描述数据库表的端云同步过程的统计信息。 |
50| [Rdb_TableDetails](_rdb___table_details.md) | 描述数据库表执行端云同步任务上传和下载的统计信息。 |
51| [Rdb_ProgressDetails](_rdb___progress_details.md) | 描述数据库整体执行端云同步任务上传和下载的统计信息。 |
52| [Rdb_ProgressObserver](_rdb___progress_observer.md) | 端云同步进度观察者。 |
53
54
55### 宏定义
56
57| 名称 | 描述 |
58| -------- | -------- |
59| [DISTRIBUTED_CONFIG_VERSION](#distributed_config_version)&nbsp;&nbsp;&nbsp;1 | 描述[Rdb_DistributedConfig](_rdb___distributed_config.md)的版本。 |
60| [DISTRIBUTED_CHANGE_INFO_VERSION](#distributed_change_info_version)&nbsp;&nbsp;&nbsp;1 | 描述[Rdb_ChangeInfo](_rdb___change_info.md)的版本。 |
61| [DISTRIBUTED_PROGRESS_DETAIL_VERSION](#distributed_progress_detail_version)&nbsp;&nbsp;&nbsp;1 | 描述[Rdb_ProgressDetails](_rdb___progress_details.md)的版本。 |
62
63
64### 类型定义
65
66| 名称 | 描述 |
67| -------- | -------- |
68| typedef enum [Rdb_ConflictResolution](#rdb_conflictresolution) [Rdb_ConflictResolution](#rdb_conflictresolution) | 表示冲突解决策略的枚举。 |
69| typedef struct [OH_Rdb_ConfigV2](#oh_rdb_configv2) [OH_Rdb_ConfigV2](#oh_rdb_configv2) | 管理关系数据库配置,与[OH_Rdb_Config](_o_h___rdb___config.md)的区别是该结构体成员变量不对外暴露,使用一系列方法配置该结构体的属性,支持向量数据库。 |
70| typedef enum [Rdb_DBType](#rdb_dbtype) [Rdb_DBType](#rdb_dbtype) | 描述数据库的内核类型。 |
71| typedef enum [Rdb_Tokenizer](#rdb_tokenizer) [Rdb_Tokenizer](#rdb_tokenizer) | 描述数据库的分词器类型。 |
72| typedef enum [OH_ColumnType](#oh_columntype) [OH_ColumnType](#oh_columntype) | 表示列的类型。 |
73| typedef struct [OH_Data_Value](#oh_data_value) [OH_Data_Value](#oh_data_value) | 定义[OH_Data_Value](#oh_data_value)结构类型。 |
74| typedef struct [OH_Data_Values](#oh_data_values) [OH_Data_Values](#oh_data_values) | 定义[OH_Data_Values](#oh_data_values)结构类型。 |
75| typedef struct [OH_Data_VBuckets](#oh_data_vbuckets) [OH_Data_VBuckets](#oh_data_vbuckets) | 定义OH_Data_VBuckets结构类型。 |
76| typedef enum [OH_RDB_TransType](#oh_rdb_transtype) [OH_RDB_TransType](#oh_rdb_transtype) | 表示关系型数据库事务类型。 |
77| typedef struct [OH_RDB_TransOptions](#oh_rdb_transoptions) [OH_RDB_TransOptions](#oh_rdb_transoptions) | 定义[OH_RDB_TransOptions](#oh_rdb_transoptions)结构类型。 |
78| typedef struct [OH_Rdb_Transaction](#oh_rdb_transaction) [OH_Rdb_Transaction](#oh_rdb_transaction) | 定义[OH_Rdb_Transaction](#oh_rdb_transaction)结构类型。 |
79| [OH_Cursor](#oh_cursor) | 表示结果集。 |
80| [OH_OrderType](#oh_ordertype) | 排序方式。 |
81| [OH_Predicates](#oh_predicates) | 表示谓词。 |
82| [OH_VObject](#oh_vobject) | 表示允许的数据字段类型。 |
83| [OH_VBucket](#oh_vbucket) | 用于存储键值对的类型。 |
84| [OH_Rdb_SecurityLevel](#oh_rdb_securitylevel) | 数据库的安全级别枚举。 |
85| [Rdb_SecurityArea](#rdb_securityarea) | 描述数据库的安全区域等级。 |
86| [Rdb_DistributedType](#rdb_distributedtype) | 描述表的分布式类型的枚举。 |
87| [Rdb_DistributedConfig](#rdb_distributedconfig) | 记录表的分布式配置信息。 |
88| [Rdb_ChangeType](#rdb_changetype) | 描述数据变更类型。 |
89| [Rdb_KeyInfo](#rdb_keyinfo) | 描述发生变化的行的主键或者行号。 |
90| [Rdb_ChangeInfo](#rdb_changeinfo) | 记录端云同步过程详情。 |
91| [Rdb_SubscribeType](#rdb_subscribetype) | 描述订阅类型。 |
92| [Rdb_BriefObserver](#rdb_briefobserver) | 端云数据更改事件的回调函数。 |
93| [Rdb_DetailsObserver](#rdb_detailsobserver) | 端云数据更改事件的细节的回调函数。 |
94| [Rdb_SubscribeCallback](#rdb_subscribecallback) | 表示回调函数。 |
95| [Rdb_DataObserver](#rdb_dataobserver) | 表示数据观察者。 |
96| [Rdb_SyncMode](#rdb_syncmode) | 表示数据库的同步模式。 |
97| [Rdb_Statistic](#rdb_statistic) | 描述数据库表的端云同步过程的统计信息。 |
98| [Rdb_TableDetails](#rdb_tabledetails) | 描述数据库表执行端云同步任务上传和下载的统计信息。 |
99| [Rdb_Progress](#rdb_progress) | 描述端云同步过程。 |
100| [Rdb_ProgressCode](#rdb_progresscode) | 表示端云同步过程的状态。 |
101| [Rdb_ProgressDetails](#rdb_progressdetails) | 描述数据库整体执行端云同步任务上传和下载的统计信息。 |
102| [Rdb_ProgressCallback](#rdb_progresscallback) | 端云同步进度的回调函数。 |
103| [Rdb_SyncCallback](#rdb_synccallback) | 数据库端云同步的回调函数。 |
104| [Rdb_ProgressObserver](#rdb_progressobserver) | 端云同步进度观察者。 |
105| [OH_Rdb_ErrCode](#oh_rdb_errcode) | 表示错误码信息。 |
106
107
108### 枚举
109
110| 名称 | 描述 |
111| -------- | -------- |
112| [Rdb_DBType](#rdb_dbtype-1) { RDB_SQLITE = 1, RDB_CAYLEY = 2, DBTYPE_BUTT = 64 } | 描述数据库的内核类型。 |
113| [OH_OrderType](#oh_ordertype-1) { ASC = 0, DESC = 1 } | 排序方式。 |
114| [OH_Rdb_SecurityLevel](#oh_rdb_securitylevel-1) { S1 = 1, S2, S3, S4 } | 数据库的安全级别枚举。 |
115| [Rdb_SecurityArea](#rdb_securityarea-1) { RDB_SECURITY_AREA_EL1 = 1, RDB_SECURITY_AREA_EL2, RDB_SECURITY_AREA_EL3, RDB_SECURITY_AREA_EL4, RDB_SECURITY_AREA_EL5 } | 描述数据库的安全区域等级。 |
116| [Rdb_DistributedType](#rdb_distributedtype-1) { RDB_DISTRIBUTED_CLOUD } | 描述表的分布式类型的枚举。 |
117| [Rdb_ChangeType](#rdb_changetype-1) { RDB_DATA_CHANGE, RDB_ASSET_CHANGE } | 描述数据变更类型。 |
118| [Rdb_SubscribeType](#rdb_subscribetype-1) { RDB_SUBSCRIBE_TYPE_CLOUD, RDB_SUBSCRIBE_TYPE_CLOUD_DETAILS, RDB_SUBSCRIBE_TYPE_LOCAL_DETAILS } | 描述订阅类型。 |
119| [Rdb_SyncMode](#rdb_syncmode-1) { RDB_SYNC_MODE_TIME_FIRST, RDB_SYNC_MODE_NATIVE_FIRST, RDB_SYNC_MODE_CLOUD_FIRST } | 表示数据库的同步模式。 |
120| [Rdb_Progress](#rdb_progress-1) { RDB_SYNC_BEGIN, RDB_SYNC_IN_PROGRESS, RDB_SYNC_FINISH } | 描述端云同步过程。 |
121| [Rdb_ProgressCode](#rdb_progresscode-1) {<br/>RDB_SUCCESS, RDB_UNKNOWN_ERROR, RDB_NETWORK_ERROR, RDB_CLOUD_DISABLED,<br/>RDB_LOCKED_BY_OTHERS, RDB_RECORD_LIMIT_EXCEEDED, RDB_NO_SPACE_FOR_ASSET<br/>} | 表示端云同步过程的状态。 |
122| [OH_ColumnType](#oh_columntype-1) {<br/>TYPE_NULL = 0, TYPE_INT64, TYPE_REAL, TYPE_TEXT,<br/>TYPE_BLOB, TYPE_ASSET, TYPE_ASSETS, TYPE_FLOAT_VECTOR,<br/>TYPE_UNLIMITED_INT<br/>} | 表示列的类型。 |
123| [OH_RDB_TransType](#oh_rdb_transtype-1) { RDB_TRANS_DEFERRED = 0, RDB_TRANS_IMMEDIATE, RDB_TRANS_EXCLUSIVE, RDB_TRANS_BUTT } | 表示关系型数据库事务类型。 |
124| [Rdb_Tokenizer](#rdb_tokenizer-1) { RDB_NONE_TOKENIZER = 1, RDB_ICU_TOKENIZER = 2, RDB_CUSTOM_TOKENIZER = 3 } | 描述数据库的分词器类型。 |
125| [Rdb_ConflictResolution](#rdb_conflictresolution-1) {<br/>RDB_CONFLICT_NONE = 1, RDB_CONFLICT_ROLLBACK, RDB_CONFLICT_ABORT, RDB_CONFLICT_FAIL,<br/>RDB_CONFLICT_IGNORE, RDB_CONFLICT_REPLACE<br/>} | 表示冲突解决策略的枚举。 |
126| [OH_Rdb_ErrCode](#oh_rdb_errcode-1) {<br/>RDB_ERR = -1, RDB_OK = 0, E_BASE = 14800000, RDB_E_NOT_SUPPORTED = 801,<br/>RDB_E_ERROR = E_BASE, RDB_E_INVALID_ARGS = (E_BASE + 1), RDB_E_CANNOT_UPDATE_READONLY = (E_BASE + 2), RDB_E_REMOVE_FILE = (E_BASE + 3),<br/>RDB_E_EMPTY_TABLE_NAME = (E_BASE + 5), RDB_E_EMPTY_VALUES_BUCKET = (E_BASE + 6), RDB_E_EXECUTE_IN_STEP_QUERY = (E_BASE + 7), RDB_E_INVALID_COLUMN_INDEX = (E_BASE + 8),<br/>RDB_E_INVALID_COLUMN_TYPE = (E_BASE + 9), RDB_E_EMPTY_FILE_NAME = (E_BASE + 10), RDB_E_INVALID_FILE_PATH = (E_BASE + 11), RDB_E_TRANSACTION_IN_EXECUTE = (E_BASE + 12),<br/>RDB_E_INVALID_STATEMENT = (E_BASE + 13), RDB_E_EXECUTE_WRITE_IN_READ_CONNECTION = (E_BASE + 14), RDB_E_BEGIN_TRANSACTION_IN_READ_CONNECTION = (E_BASE + 15), RDB_E_NO_TRANSACTION_IN_SESSION = (E_BASE + 16),<br/>RDB_E_MORE_STEP_QUERY_IN_ONE_SESSION = (E_BASE + 17), RDB_E_NO_ROW_IN_QUERY = (E_BASE + 18), RDB_E_INVALID_BIND_ARGS_COUNT = (E_BASE + 19), RDB_E_INVALID_OBJECT_TYPE = (E_BASE + 20),<br/>RDB_E_INVALID_CONFLICT_FLAG = (E_BASE + 21), RDB_E_HAVING_CLAUSE_NOT_IN_GROUP_BY = (E_BASE + 22), RDB_E_NOT_SUPPORTED_BY_STEP_RESULT_SET = (E_BASE + 23), RDB_E_STEP_RESULT_SET_CROSS_THREADS = (E_BASE + 24),<br/>RDB_E_STEP_RESULT_QUERY_NOT_EXECUTED = (E_BASE + 25), RDB_E_STEP_RESULT_IS_AFTER_LAST = (E_BASE + 26), RDB_E_STEP_RESULT_QUERY_EXCEEDED = (E_BASE + 27), RDB_E_STATEMENT_NOT_PREPARED = (E_BASE + 28),<br/>RDB_E_EXECUTE_RESULT_INCORRECT = (E_BASE + 29), RDB_E_STEP_RESULT_CLOSED = (E_BASE + 30), RDB_E_RELATIVE_PATH = (E_BASE + 31), RDB_E_EMPTY_NEW_ENCRYPT_KEY = (E_BASE + 32),<br/>RDB_E_CHANGE_UNENCRYPTED_TO_ENCRYPTED = (E_BASE + 33), RDB_E_CHANGE_ENCRYPT_KEY_IN_BUSY = (E_BASE + 34), RDB_E_STEP_STATEMENT_NOT_INIT = (E_BASE + 35), RDB_E_NOT_SUPPORTED_ATTACH_IN_WAL_MODE = (E_BASE + 36),<br/>RDB_E_CREATE_FOLDER_FAIL = (E_BASE + 37), RDB_E_SQLITE_SQL_BUILDER_NORMALIZE_FAIL = (E_BASE + 38), RDB_E_STORE_SESSION_NOT_GIVE_CONNECTION_TEMPORARILY = (E_BASE + 39), RDB_E_STORE_SESSION_NO_CURRENT_TRANSACTION = (E_BASE + 40),<br/>RDB_E_NOT_SUPPORT = (E_BASE + 41), RDB_E_INVALID_PARCEL = (E_BASE + 42), RDB_E_QUERY_IN_EXECUTE = (E_BASE + 43), RDB_E_SET_PERSIST_WAL = (E_BASE + 44),<br/>RDB_E_DB_NOT_EXIST = (E_BASE + 45), RDB_E_ARGS_READ_CON_OVERLOAD = (E_BASE + 46), RDB_E_WAL_SIZE_OVER_LIMIT = (E_BASE + 47), RDB_E_CON_OVER_LIMIT = (E_BASE + 48),<br/>RDB_E_ALREADY_CLOSED = (E_BASE + 50), RDB_E_DATABASE_BUSY = (E_BASE + 51), RDB_E_SQLITE_CORRUPT = (E_BASE + 52), RDB_E_SQLITE_PERM = (E_BASE + 53),<br/>RDB_E_SQLITE_BUSY = (E_BASE + 54), RDB_E_SQLITE_LOCKED = (E_BASE + 55), RDB_E_SQLITE_NOMEM = (E_BASE + 56), RDB_E_SQLITE_READONLY = (E_BASE + 57),<br/>RDB_E_SQLITE_IOERR = (E_BASE + 58), RDB_E_SQLITE_FULL = (E_BASE + 59), RDB_E_SQLITE_CANT_OPEN = (E_BASE + 60), RDB_E_SQLITE_TOO_BIG = (E_BASE + 61),<br/>RDB_E_SQLITE_MISMATCH = (E_BASE + 62), RDB_E_DATA_TYPE_NULL = (E_BASE + 63), RDB_E_TYPE_MISMATCH = (E_BASE + 64), RDB_E_SQLITE_CONSTRAINT = (E_BASE + 65)<br/>} | 表示错误码信息。 |
127
128
129### 函数
130
131| 名称 | 描述 |
132| -------- | -------- |
133| int [OH_RdbTrans_BatchInsert](#oh_rdbtrans_batchinsert) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans, const char \*table, const [OH_Data_VBuckets](#oh_data_vbuckets) \*rows, [Rdb_ConflictResolution](#rdb_conflictresolution) resolution, int64_t \*changes) | 将一组数据批量插入到目标表中。 |
134| int [OH_Rdb_BatchInsert](#oh_rdb_batchinsert) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*table, const [OH_Data_VBuckets](#oh_data_vbuckets) \*rows, [Rdb_ConflictResolution](#rdb_conflictresolution) resolution, int64_t \*changes) | 将一批数据插入到目标表中。 |
135| int [OH_Rdb_SetPersistent](#oh_rdb_setpersistent) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, bool isPersistent) | 指定数据库是否需要持久化。 |
136| int [OH_Rdb_IsTokenizerSupported](#oh_rdb_istokenizersupported) ([Rdb_Tokenizer](#rdb_tokenizer) tokenizer, bool \*isSupported) | 判断当前平台是否支持传入的分词器。 |
137| int [OH_Rdb_SetTokenizer](#oh_rdb_settokenizer) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, [Rdb_Tokenizer](#rdb_tokenizer) tokenizer) | 给指定的数据库文件配置设置分词器类型。 |
138| int [OH_Cursor_GetFloatVectorCount](#oh_cursor_getfloatvectorcount) ([OH_Cursor](_o_h___cursor.md) \*cursor, int32_t columnIndex, size_t \*length) | 获取当前行中指定列的浮点数数组大小。 |
139| int [OH_Cursor_GetFloatVector](#oh_cursor_getfloatvector) ([OH_Cursor](_o_h___cursor.md) \*cursor, int32_t columnIndex, float \*val, size_t inLen, size_t \*outLen) | 以浮点数数组的形式获取当前行中指定列的值。 |
140| int [OH_Rdb_ExecuteV2](#oh_rdb_executev2) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*sql, const [OH_Data_Values](#oh_data_values) \*args, [OH_Data_Value](#oh_data_value) \*\*result) | 执行有返回值的SQL语句,支持向量数据库。 |
141| [OH_Cursor](_o_h___cursor.md) \* [OH_Rdb_ExecuteQueryV2](#oh_rdb_executequeryv2) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*sql, const [OH_Data_Values](#oh_data_values) \*args) | 根据指定SQL语句查询数据库中的数据,支持向量数据库。 |
142| [OH_Data_Value](#oh_data_value) \* [OH_Value_Create](#oh_value_create) (void) | 创建[OH_Data_Value](#oh_data_value)实例,用于储存单条键值对数据。 |
143| int [OH_Value_Destroy](#oh_value_destroy) ([OH_Data_Value](#oh_data_value) \*value) | 销毁[OH_Data_Value](#oh_data_value)对象。 |
144| int [OH_Value_PutNull](#oh_value_putnull) ([OH_Data_Value](#oh_data_value) \*value) | 添加空数据。 |
145| int [OH_Value_PutInt](#oh_value_putint) ([OH_Data_Value](#oh_data_value) \*value, int64_t val) | 添加整型数据。 |
146| int [OH_Value_PutReal](#oh_value_putreal) ([OH_Data_Value](#oh_data_value) \*value, double val) | 添加REAL类型数据。 |
147| int [OH_Value_PutText](#oh_value_puttext) ([OH_Data_Value](#oh_data_value) \*value, const char \*val) | 添加字符串类型数据。 |
148| int [OH_Value_PutBlob](#oh_value_putblob) ([OH_Data_Value](#oh_data_value) \*value, const unsigned char \*val, size_t length) | 添加BLOB类型数据。 |
149| int [OH_Value_PutAsset](#oh_value_putasset) ([OH_Data_Value](#oh_data_value) \*value, const Data_Asset \*val) | 添加ASSET类型数据。 |
150| int [OH_Value_PutAssets](#oh_value_putassets) ([OH_Data_Value](#oh_data_value) \*value, const Data_Asset \*const \*val, size_t length) | 添加ASSETS类型数据。 |
151| int [OH_Value_PutFloatVector](#oh_value_putfloatvector) ([OH_Data_Value](#oh_data_value) \*value, const float \*val, size_t length) | 添加float数组类型数据。 |
152| int [OH_Value_PutUnlimitedInt](#oh_value_putunlimitedint) ([OH_Data_Value](#oh_data_value) \*value, int sign, const uint64_t \*trueForm, size_t length) | 添加任意长度的整型数组数据。 |
153| int [OH_Value_GetType](#oh_value_gettype) ([OH_Data_Value](#oh_data_value) \*value, [OH_ColumnType](#oh_columntype) \*type) | 获取数据类型。 |
154| int [OH_Value_IsNull](#oh_value_isnull) ([OH_Data_Value](#oh_data_value) \*value, bool \*val) | 检查数据是否为空。 |
155| int [OH_Value_GetInt](#oh_value_getint) ([OH_Data_Value](#oh_data_value) \*value, int64_t \*val) | 获取整型数据。 |
156| int [OH_Value_GetReal](#oh_value_getreal) ([OH_Data_Value](#oh_data_value) \*value, double \*val) | 获取REAL类型数据。 |
157| int [OH_Value_GetText](#oh_value_gettext) ([OH_Data_Value](#oh_data_value) \*value, const char \*\*val) | 获取字符串类型数据。 |
158| int [OH_Value_GetBlob](#oh_value_getblob) ([OH_Data_Value](#oh_data_value) \*value, const uint8_t \*\*val, size_t \*length) | 获取BLOB类型数据。 |
159| int [OH_Value_GetAsset](#oh_value_getasset) ([OH_Data_Value](#oh_data_value) \*value, Data_Asset \*val) | 获取ASSET类型数据。 |
160| int [OH_Value_GetAssetsCount](#oh_value_getassetscount) ([OH_Data_Value](#oh_data_value) \*value, size_t \*length) | 获取ASSETS类型数据的大小。 |
161| int [OH_Value_GetAssets](#oh_value_getassets) ([OH_Data_Value](#oh_data_value) \*value, Data_Asset \*\*val, size_t inLen, size_t \*outLen) | 获取ASSETS类型数据。 |
162| int [OH_Value_GetFloatVectorCount](#oh_value_getfloatvectorcount) ([OH_Data_Value](#oh_data_value) \*value, size_t \*length) | 获取float数组类型数据的大小。 |
163| int [OH_Value_GetFloatVector](#oh_value_getfloatvector) ([OH_Data_Value](#oh_data_value) \*value, float \*val, size_t inLen, size_t \*outLen) | 获取float数组类型数据。 |
164| int [OH_Value_GetUnlimitedIntBand](#oh_value_getunlimitedintband) ([OH_Data_Value](#oh_data_value) \*value, size_t \*length) | 获取任意长度的整型数据的大小。 |
165| int [OH_Value_GetUnlimitedInt](#oh_value_getunlimitedint) ([OH_Data_Value](#oh_data_value) \*value, int \*sign, uint64_t \*trueForm, size_t inLen, size_t \*outLen) | 获取任意长度的整型数据。 |
166| [OH_Data_Values](#oh_data_values) \* [OH_Values_Create](#oh_values_create) (void) | 创建[OH_Data_Values](#oh_data_values)实例,用于储存多条键值对数据。 |
167| int [OH_Values_Destroy](#oh_values_destroy) ([OH_Data_Values](#oh_data_values) \*values) | 销毁[OH_Data_Values](#oh_data_values)对象。 |
168| int [OH_Values_Put](#oh_values_put) ([OH_Data_Values](#oh_data_values) \*values, const [OH_Data_Value](#oh_data_value) \*val) | 添加OH_Data_Value类型数据给OH_Data_Values对象。 |
169| int [OH_Values_PutNull](#oh_values_putnull) ([OH_Data_Values](#oh_data_values) \*values) | 添加空数据给OH_Data_Values对象。 |
170| int [OH_Values_PutInt](#oh_values_putint) ([OH_Data_Values](#oh_data_values) \*values, int64_t val) | 添加整型数据给OH_Data_Values对象。 |
171| int [OH_Values_PutReal](#oh_values_putreal) ([OH_Data_Values](#oh_data_values) \*values, double val) | 添加REAL类型数据给OH_Data_Values对象。 |
172| int [OH_Values_PutText](#oh_values_puttext) ([OH_Data_Values](#oh_data_values) \*values, const char \*val) | 添加字符串类型数据给OH_Data_Values对象。 |
173| int [OH_Values_PutBlob](#oh_values_putblob) ([OH_Data_Values](#oh_data_values) \*values, const unsigned char \*val, size_t length) | 添加BLOB类型数据给OH_Data_Values对象。 |
174| int [OH_Values_PutAsset](#oh_values_putasset) ([OH_Data_Values](#oh_data_values) \*values, const Data_Asset \*val) | 添加ASSET类型数据给OH_Data_Values对象。 |
175| int [OH_Values_PutAssets](#oh_values_putassets) ([OH_Data_Values](#oh_data_values) \*values, const Data_Asset \*const \*val, size_t length) | 添加ASSETS类型数据给OH_Data_Values对象。 |
176| int [OH_Values_PutFloatVector](#oh_values_putfloatvector) ([OH_Data_Values](#oh_data_values) \*values, const float \*val, size_t length) | 添加float数组类型数据给OH_Data_Values对象。 |
177| int [OH_Values_PutUnlimitedInt](#oh_values_putunlimitedint) ([OH_Data_Values](#oh_data_values) \*values, int sign, const uint64_t \*trueForm, size_t length) | 添加任意长度的整型数组数据给OH_Data_Values对象。 |
178| int [OH_Values_Count](#oh_values_count) ([OH_Data_Values](#oh_data_values) \*values, size_t \*count) | 获取数据个数。 |
179| int [OH_Values_GetType](#oh_values_gettype) ([OH_Data_Values](#oh_data_values) \*values, int index, [OH_ColumnType](#oh_columntype) \*type) | 获取数据类型。 |
180| int [OH_Values_Get](#oh_values_get) ([OH_Data_Values](#oh_data_values) \*values, int index, [OH_Data_Value](#oh_data_value) \*\*val) | 获取OH_Data_Value类型数据。 |
181| int [OH_Values_IsNull](#oh_values_isnull) ([OH_Data_Values](#oh_data_values) \*values, int index, bool \*val) | 检查数据是否为空。 |
182| int [OH_Values_GetInt](#oh_values_getint) ([OH_Data_Values](#oh_data_values) \*values, int index, int64_t \*val) | 获取整型数据。 |
183| int [OH_Values_GetReal](#oh_values_getreal) ([OH_Data_Values](#oh_data_values) \*values, int index, double \*val) | 获取REAL类型数据。 |
184| int [OH_Values_GetText](#oh_values_gettext) ([OH_Data_Values](#oh_data_values) \*values, int index, const char \*\*val) | 获取字符串类型数据。 |
185| int [OH_Values_GetBlob](#oh_values_getblob) ([OH_Data_Values](#oh_data_values) \*values, int index, const uint8_t \*\*val, size_t \*length) | 获取BLOB类型数据。 |
186| int [OH_Values_GetAsset](#oh_values_getasset) ([OH_Data_Values](#oh_data_values) \*values, int index, Data_Asset \*val) | 获取ASSET类型数据。 |
187| int [OH_Values_GetAssetsCount](#oh_values_getassetscount) ([OH_Data_Values](#oh_data_values) \*values, int index, size_t \*length) | 获取ASSETS类型数据的大小。 |
188| int [OH_Values_GetAssets](#oh_values_getassets) ([OH_Data_Values](#oh_data_values) \*values, int index, Data_Asset \*\*val, size_t inLen, size_t \*outLen) | 获取ASSETS类型数据。 |
189| int [OH_Values_GetFloatVectorCount](#oh_values_getfloatvectorcount) ([OH_Data_Values](#oh_data_values) \*values, int index, size_t \*length) | 获取float数组类型数据的大小。 |
190| int [OH_Values_GetFloatVector](#oh_values_getfloatvector) ([OH_Data_Values](#oh_data_values) \*values, int index, float \*val, size_t inLen, size_t \*outLen) | 获取float数组类型数据。 |
191| int [OH_Values_GetUnlimitedIntBand](#oh_values_getunlimitedintband) ([OH_Data_Values](#oh_data_values) \*values, int index, size_t \*length) | 获取任意长度的整型数据的大小。 |
192| int [OH_Values_GetUnlimitedInt](#oh_values_getunlimitedint) ([OH_Data_Values](#oh_data_values) \*values, int index, int \*sign, uint64_t \*trueForm, size_t inLen, size_t \*outLen) | 获取任意长度的整型数据。 |
193| [OH_Data_VBuckets](#oh_data_vbuckets) \* [OH_VBuckets_Create](#oh_vbuckets_create) (void) | 创建OH_Data_VBuckets实例。 |
194| int [OH_VBuckets_Destroy](#oh_vbuckets_destroy) ([OH_Data_VBuckets](#oh_data_vbuckets) \*buckets) | 销毁OH_Data_VBuckets对象。 |
195| int [OH_VBuckets_PutRow](#oh_vbuckets_putrow) ([OH_Data_VBuckets](#oh_data_vbuckets) \*buckets, const [OH_VBucket](_o_h___v_bucket.md) \*row) | 添加OH_VBucket类型数据。 |
196| int [OH_VBuckets_PutRows](#oh_vbuckets_putrows) ([OH_Data_VBuckets](#oh_data_vbuckets) \*buckets, const [OH_Data_VBuckets](#oh_data_vbuckets) \*rows) | 添加OH_Data_VBuckets类型数据。 |
197| int [OH_VBuckets_RowCount](#oh_vbuckets_rowcount) ([OH_Data_VBuckets](#oh_data_vbuckets) \*buckets, size_t \*count) | 获取OH_Data_VBuckets中OH_VBucket的行数。 |
198| [OH_RDB_TransOptions](#oh_rdb_transoptions) \* [OH_RdbTrans_CreateOptions](#oh_rdbtrans_createoptions) (void) | 创建事务配置对象。 |
199| int [OH_RdbTrans_DestroyOptions](#oh_rdbtrans_destroyoptions) ([OH_RDB_TransOptions](#oh_rdb_transoptions) \*opitons) | 销毁事务配置对象。 |
200| int [OH_RdbTransOption_SetType](#oh_rdbtransoption_settype) ([OH_RDB_TransOptions](#oh_rdb_transoptions) \*opitons, [OH_RDB_TransType](#oh_rdb_transtype) type) | 设置关系型数据库事务类型。 |
201| int [OH_RdbTrans_Commit](#oh_rdbtrans_commit) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans) | 提交事务。 |
202| int [OH_RdbTrans_Rollback](#oh_rdbtrans_rollback) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans) | 回滚事务。 |
203| int [OH_RdbTrans_Insert](#oh_rdbtrans_insert) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans, const char \*table, const [OH_VBucket](_o_h___v_bucket.md) \*row, int64_t \*rowId) | 将一行数据插入到目标表中。 |
204| int [OH_RdbTrans_Update](#oh_rdbtrans_update) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans, const [OH_VBucket](_o_h___v_bucket.md) \*row, const [OH_Predicates](_o_h___predicates.md) \*predicates, int64_t \*changes) | 根据指定的条件更新数据库中的数据。 |
205| int [OH_RdbTrans_Delete](#oh_rdbtrans_delete) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans, const [OH_Predicates](_o_h___predicates.md) \*predicates, int64_t \*changes) | 根据指定条件从数据库中删除数据。 |
206| [OH_Cursor](_o_h___cursor.md) \* [OH_RdbTrans_Query](#oh_rdbtrans_query) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans, const [OH_Predicates](_o_h___predicates.md) \*predicates, const char \*columns[], int len) | 根据指定的条件查询数据库中的数据。 |
207| [OH_Cursor](_o_h___cursor.md) \* [OH_RdbTrans_QuerySql](#oh_rdbtrans_querysql) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans, const char \*sql, const [OH_Data_Values](#oh_data_values) \*args) | 根据SQL语句查询数据库中的数据。 |
208| int [OH_RdbTrans_Execute](#oh_rdbtrans_execute) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans, const char \*sql, const [OH_Data_Values](#oh_data_values) \*args, [OH_Data_Value](#oh_data_value) \*\*result) | 执行包含指定参数的SQL语句。 |
209| int [OH_RdbTrans_Destroy](#oh_rdbtrans_destroy) ([OH_Rdb_Transaction](#oh_rdb_transaction) \*trans) | 销毁事务对象。 |
210| int [OH_VBucket_PutFloatVector](#oh_vbucket_putfloatvector) ([OH_VBucket](_o_h___v_bucket.md) \*bucket, const char \*field, const float \*vec, size_t len) | 将float数组类型对象放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。 |
211| int [OH_VBucket_PutUnlimitedInt](#oh_vbucket_putunlimitedint) ([OH_VBucket](_o_h___v_bucket.md) \*bucket, const char \*field, int sign, const uint64_t \*trueForm, size_t len) | 将任意长度的整数类型对象放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。 |
212| [OH_Rdb_ConfigV2](#oh_rdb_configv2) \* [OH_Rdb_CreateConfig](#oh_rdb_createconfig) () | 创建一个[OH_Rdb_ConfigV2](#oh_rdb_configv2)实例,并返回指向该实例的指针。 |
213| int [OH_Rdb_DestroyConfig](#oh_rdb_destroyconfig) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config) | 销毁由[OH_Rdb_CreateConfig](#oh_rdb_createconfig)创建的[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象。 |
214| int [OH_Rdb_SetDatabaseDir](#oh_rdb_setdatabasedir) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, const char \*databaseDir) | 给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库文件路径。 |
215| int [OH_Rdb_SetStoreName](#oh_rdb_setstorename) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, const char \*storeName) | 给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库名称。 |
216| int [OH_Rdb_SetBundleName](#oh_rdb_setbundlename) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, const char \*bundleName) | 给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置应用包名。 |
217| int [OH_Rdb_SetModuleName](#oh_rdb_setmodulename) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, const char \*moduleName) | 给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置应用模块名。 |
218| int [OH_Rdb_SetEncrypted](#oh_rdb_setencrypted) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, bool isEncrypted) | 给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库是否加密。 |
219| int [OH_Rdb_SetSecurityLevel](#oh_rdb_setsecuritylevel) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, int securityLevel) | 给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库安全级别[OH_Rdb_SecurityLevel](#oh_rdb_securitylevel)。 |
220| int [OH_Rdb_SetArea](#oh_rdb_setarea) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, int area) | 给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库安全区域等级[Rdb_SecurityArea](#rdb_securityarea)。 |
221| int [OH_Rdb_SetDbType](#oh_rdb_setdbtype) ([OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, int dbType) | 给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库类型[Rdb_DBType](#rdb_dbtype)。 |
222| const int \* [OH_Rdb_GetSupportedDbType](#oh_rdb_getsupporteddbtype) (int \*typeCount) | 获得支持的数据库类型[Rdb_DBType](#rdb_dbtype)。 |
223| [OH_Rdb_Store](_o_h___rdb___store.md) \* [OH_Rdb_CreateOrOpen](#oh_rdb_createoropen) (const [OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config, int \*errCode) | 使用指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),获得一个对应的[OH_Rdb_Store](_o_h___rdb___store.md)实例,用来操作关系型数据库。 |
224| int [OH_Rdb_DeleteStoreV2](#oh_rdb_deletestorev2) (const [OH_Rdb_ConfigV2](#oh_rdb_configv2) \*config) | 使用指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2)删除数据库。当使用向量数据库时,在调用接口前,应当确保向量数据库已经被正确关闭。 |
225| int [OH_Rdb_ExecuteByTrxId](#oh_rdb_executebytrxid) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, int64_t trxId, const char \*sql) | 使用指定的事务ID执行无返回值的SQL语句,仅支持向量数据库。 |
226| int [OH_Rdb_BeginTransWithTrxId](#oh_rdb_begintranswithtrxid) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, int64_t \*trxId) | 在开始执行SQL语句之前,开始事务,并获得该事务的ID,仅支持向量数据库。 |
227| int [OH_Rdb_RollBackByTrxId](#oh_rdb_rollbackbytrxid) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, int64_t trxId) | 使用指定的事务ID,回滚已经执行的SQL语句,仅支持向量数据库。 |
228| int [OH_Rdb_CommitByTrxId](#oh_rdb_commitbytrxid) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, int64_t trxId) | 使用指定的事务ID,提交已经执行的SQL语句,仅支持向量数据库。 |
229| [OH_VBucket_PutAsset](#oh_vbucket_putasset) ([OH_VBucket](_o_h___v_bucket.md) \*bucket, const char \*field, Data_Asset \*value) | 将**Data_Asset**类型的对象放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。 |
230| [OH_VBucket_PutAssets](#oh_vbucket_putassets) ([OH_VBucket](_o_h___v_bucket.md) \*bucket, const char \*field, Data_Asset \*\*value, int count) | 将**Data_Asset**类型的对象数组放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。 |
231| [OH_Rdb_CreateValueObject](#oh_rdb_createvalueobject) () | 创建[OH_VObject](_o_h___v_object.md)实例。 |
232| [OH_Rdb_CreateValuesBucket](#oh_rdb_createvaluesbucket) () | 创建[OH_VBucket](_o_h___v_bucket.md)实例。 |
233| [OH_Rdb_CreatePredicates](#oh_rdb_createpredicates) (const char \*table) | 创建[OH_Predicates](_o_h___predicates.md)实例。 |
234| [OH_Rdb_GetOrOpen](#oh_rdb_getoropen) (const [OH_Rdb_Config](_o_h___rdb___config.md) \*config, int \*errCode) | 获得一个相关的[OH_Rdb_Store](_o_h___rdb___store.md)实例,操作关系型数据库。 |
235| [OH_Rdb_CloseStore](#oh_rdb_closestore) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store) | 销毁[OH_Rdb_Store](_o_h___rdb___store.md)对象,并回收该对象占用的内存。 |
236| [OH_Rdb_DeleteStore](#oh_rdb_deletestore) (const [OH_Rdb_Config](_o_h___rdb___config.md) \*config) | 使用指定的数据库文件配置删除数据库。 |
237| [OH_Rdb_Insert](#oh_rdb_insert) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*table, [OH_VBucket](_o_h___v_bucket.md) \*valuesBucket) | 向目标表中插入一行数据。 |
238| [OH_Rdb_Update](#oh_rdb_update) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, [OH_VBucket](_o_h___v_bucket.md) \*valuesBucket, [OH_Predicates](_o_h___predicates.md) \*predicates) | 根据指定的条件更新数据库中的数据。 |
239| [OH_Rdb_Delete](#oh_rdb_delete) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, [OH_Predicates](_o_h___predicates.md) \*predicates) | 根据指定的条件删除数据库中的数据。 |
240| [OH_Rdb_Query](#oh_rdb_query) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, [OH_Predicates](_o_h___predicates.md) \*predicates, const char \*const \*columnNames, int length) | 根据指定条件查询数据库中的数据。 |
241| [OH_Rdb_Execute](#oh_rdb_execute) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*sql) | 执行无返回值的SQL语句。 |
242| [OH_Rdb_ExecuteQuery](#oh_rdb_executequery) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*sql) | 根据指定SQL语句查询数据库中的数据,支持向量数据库。 |
243| [OH_Rdb_BeginTransaction](#oh_rdb_begintransaction) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store) | 在开始执行SQL语句之前,开始事务。 |
244| [OH_Rdb_RollBack](#oh_rdb_rollback) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store) | 回滚已经执行的SQL语句。 |
245| [OH_Rdb_Commit](#oh_rdb_commit) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store) | 提交已执行的SQL语句。 |
246| [OH_Rdb_Backup](#oh_rdb_backup) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*databasePath) | 以指定路径备份数据库,支持向量数据库。 |
247| [OH_Rdb_Restore](#oh_rdb_restore) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*databasePath) | 从指定的数据库备份文件恢复数据库,支持向量数据库。 |
248| [OH_Rdb_GetVersion](#oh_rdb_getversion) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, int \*version) | 获取数据库版本。 |
249| [OH_Rdb_SetVersion](#oh_rdb_setversion) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, int version) | 设置数据库版本。 |
250| [OH_Rdb_SetDistributedTables](#oh_rdb_setdistributedtables) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*tables[], uint32_t count, [Rdb_DistributedType](#rdb_distributedtype) type, const [Rdb_DistributedConfig](_rdb___distributed_config.md) \*config) | 设置分布式数据库表。 |
251| [OH_Rdb_FindModifyTime](#oh_rdb_findmodifytime) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const char \*tableName, const char \*columnName, [OH_VObject](_o_h___v_object.md) \*values) | 获取数据库表中数据的最后修改时间。 |
252| [OH_Rdb_Subscribe](#oh_rdb_subscribe) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, [Rdb_SubscribeType](#rdb_subscribetype) type, const [Rdb_DataObserver](_rdb___data_observer.md) \*observer) | 为数据库注册观察者。当分布式数据库中的数据发生更改时,将调用回调。 |
253| [OH_Rdb_Unsubscribe](#oh_rdb_unsubscribe) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, [Rdb_SubscribeType](#rdb_subscribetype) type, const [Rdb_DataObserver](_rdb___data_observer.md) \*observer) | 从数据库中删除指定类型的指定观察者。 |
254| [OH_Rdb_GetTableDetails](#oh_rdb_gettabledetails) ([Rdb_ProgressDetails](_rdb___progress_details.md) \*progress, int32_t version) | 从端云同步任务的统计信息中获取数据库表的统计信息。 |
255| [OH_Rdb_CloudSync](#oh_rdb_cloudsync) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, [Rdb_SyncMode](#rdb_syncmode) mode, const char \*tables[], uint32_t count, const [Rdb_ProgressObserver](_rdb___progress_observer.md) \*observer) | 进行端云同步。 |
256| [OH_Rdb_SubscribeAutoSyncProgress](#oh_rdb_subscribeautosyncprogress) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const [Rdb_ProgressObserver](_rdb___progress_observer.md) \*observer) | 订阅RDB存储的自动同步进度。当收到自动同步进度的通知时,将调用回调。 |
257| [OH_Rdb_UnsubscribeAutoSyncProgress](#oh_rdb_unsubscribeautosyncprogress) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, const [Rdb_ProgressObserver](_rdb___progress_observer.md) \*observer) | 取消订阅RDB存储的自动同步进程。 |
258| int [OH_Rdb_LockRow](#oh_rdb_lockrow) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, [OH_Predicates](_o_h___predicates.md) \*predicates) | 根据指定的条件锁定数据库中的数据,锁定数据不执行端云同步。 |
259| int [OH_Rdb_UnlockRow](#oh_rdb_unlockrow) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, [OH_Predicates](_o_h___predicates.md) \*predicates) | 根据指定的条件锁解锁数据库中的数据。 |
260| [OH_Cursor](_o_h___cursor.md) \* [OH_Rdb_QueryLockedRow](#oh_rdb_querylockedrow) ([OH_Rdb_Store](_o_h___rdb___store.md) \*store, [OH_Predicates](_o_h___predicates.md) \*predicates, const char \*const \*columnNames, int length) | 根据指定条件查询数据库中锁定的数据。 |
261
262### 变量
263
264| 名称 | 描述 |
265| -------- | -------- |
266| [OH_Cursor::id](#id-15) | OH_Cursor结构体的唯一标识符。 |
267| [OH_Cursor::getColumnCount](#getcolumncount) | 函数指针,获取结果集中的列数。 |
268| [OH_Cursor::getColumnType](#getcolumntype) | 函数指针,根据指定的列索引获取列类型。 |
269| [OH_Cursor::getColumnIndex](#getcolumnindex) | 函数指针,根据指定的列名获取列索引。 |
270| [OH_Cursor::getColumnName](#getcolumnname) | 函数指针,根据指定的列索引获取列名。 |
271| [OH_Cursor::getRowCount](#getrowcount) | 函数指针,获取结果集中的行数。 |
272| [OH_Cursor::goToNextRow](#gotonextrow) | 函数指针,转到结果集的下一行。 |
273| [OH_Cursor::getSize](#getsize) | 函数指针,当结果集中列的数据类型是BLOB或者TEXT时,获取其值所需的内存。 |
274| [OH_Cursor::getText](#gettext) | 函数指针,以字符串形式获取当前行中指定列的值。 |
275| [OH_Cursor::getInt64](#getint64) | 函数指针,以int64_t形式获取当前行中指定列的值。 |
276| [OH_Cursor::getReal](#getreal) | 函数指针,以double形式获取当前行中指定列的值。 |
277| [OH_Cursor::getBlob](#getblob) | 函数指针,以字节数组的形式获取当前行中指定列的值。 |
278| [OH_Cursor::isNull](#isnull-12) | 函数指针,检查当前行中指定列的值是否为null。 |
279| [OH_Cursor::destroy](#destroy-14) | 函数指针,关闭结果集。 |
280| [OH_Cursor::getAsset](#getasset) | 函数指针,以资产的形式获取当前行中指定列的值。 |
281| [OH_Cursor::getAssets](#getassets) | 函数指针,以资产数组的形式获取当前行中指定列的值。 |
282| [OH_Predicates::id](#id-25) | OH_Predicates结构体的唯一标识符。 |
283| [OH_Predicates::equalTo](#equalto) | 函数指针,配置谓词以匹配数据字段等于指定值的字段。 |
284| [OH_Predicates::notEqualTo](#notequalto) | 函数指针,配置谓词以匹配数据字段不等于指定值的字段。 |
285| [OH_Predicates::beginWrap](#beginwrap) | 函数指针,向谓词添加左括号。 |
286| [OH_Predicates::endWrap](#endwrap) | 函数指针,向谓词添加右括号。 |
287| [OH_Predicates::orOperate](#oroperate) | 函数指针,将或条件添加到谓词中。 |
288| [OH_Predicates::andOperate](#andoperate) | 函数指针,向谓词添加和条件。 |
289| [OH_Predicates::isNull](#isnull-22) | 函数指针,配置谓词以匹配值为null的字段。 |
290| [OH_Predicates::isNotNull](#isnotnull) | 函数指针,配置谓词以匹配值不为null的指定字段。 |
291| [OH_Predicates::like](#like) | 函数指针,配置谓词以匹配数据字段为field且值类似于指定字符串的字段。 |
292| [OH_Predicates::between](#between) | 函数指针,将谓词配置为匹配数据字段为field且其值在给定范围内的指定字段。 |
293| [OH_Predicates::notBetween](#notbetween) | 函数指针,将谓词配置为匹配数据字段为field且其值超出给定范围内的指定字段。 |
294| [OH_Predicates::greaterThan](#greaterthan) | 函数指针,配置谓词以匹配数据字段为field且值大于指定值valueObject的字段。 |
295| [OH_Predicates::lessThan](#lessthan) | 函数指针,配置谓词以匹配数据字段为field且值小于指定值valueObject的字段 |
296| [OH_Predicates::greaterThanOrEqualTo](#greaterthanorequalto) | 函数指针,配置谓词以匹配数据字段为field且值大于或等于指定值valueObject的字段 |
297| [OH_Predicates::lessThanOrEqualTo](#lessthanorequalto) | 函数指针,配置谓词以匹配数据字段为field且值小于或等于指定值valueObject的字段 |
298| [OH_Predicates::orderBy](#orderby) | 函数指针,配置谓词以匹配其值按升序或降序排序的列。 |
299| [OH_Predicates::distinct](#distinct) | 函数指针,配置谓词以过滤重复记录并仅保留其中一个。 |
300| [OH_Predicates::limit](#limit) | 函数指针,设置最大数据记录数的谓词。 |
301| [OH_Predicates::offset](#offset) | 函数指针,配置谓词以指定返回结果的起始位置。 |
302| [OH_Predicates::groupBy](#groupby) | 函数指针,配置R谓词按指定列分组查询结果。 |
303| [OH_Predicates::in](#in) | 函数指针,配置谓词以匹配数据字段为field且值在给定范围内的指定字段。 |
304| [OH_Predicates::notIn](#notin) | 函数指针,配置谓词以匹配数据字段为field且值超出给定范围内的指定字段。 |
305| [OH_Predicates::clear](#clear-12) | 函数指针,清空谓词。 |
306| [OH_Predicates::destroy](#destroy-24) | 销毁[OH_Predicates](_o_h___predicates.md)对象,并回收该对象占用的内存。 |
307| [OH_VObject::id](#id-35) | OH_VObject结构体的唯一标识符。 |
308| [OH_VObject::putInt64](#putint64-22) | 将int64类型的单个参数或者数组转换为[OH_VObject](_o_h___v_object.md)类型的值。 |
309| [OH_VObject::putDouble](#putdouble) | 将double类型的单个参数或者数组转换为[OH_VObject](_o_h___v_object.md)类型的值。 |
310| [OH_VObject::putText](#puttext-22) | 将char \*类型的字符数组转换为[OH_VObject](_o_h___v_object.md)类型的值。 |
311| [OH_VObject::putTexts](#puttexts) | 将char \*类型的字符串数组转换为[OH_VObject](_o_h___v_object.md)类型的值。 |
312| [OH_VObject::destroy](#destroy-44) | 销毁[OH_VObject](_o_h___v_object.md)对象,并回收该对象占用的内存。 |
313| [OH_VBucket::id](#id-45) | OH_VBucket结构体的唯一标识符。 |
314| [OH_VBucket::capability](#capability) | 表示结构体的存储键值对的数量 |
315| [OH_VBucket::putText](#puttext-12) | 将char\*值放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。 |
316| [OH_VBucket::putInt64](#putint64-12) | 将int64_t值放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。 |
317| [OH_VBucket::putReal](#putreal) | 将double值放入给定列名的{**OH_VBucket}对象中。** |
318| [OH_VBucket::putBlob](#putblob) | 将const uint8_t \*值放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。 |
319| [OH_VBucket::putNull](#putnull) | 将NULL值放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。 |
320| [OH_VBucket::clear](#clear-22) | 清空[OH_VBucket](_o_h___v_bucket.md)对象。 |
321| [OH_VBucket::destroy](#destroy-34) | 销毁[OH_VBucket](_o_h___v_bucket.md)对象,并回收该对象占用的内存。 |
322| [OH_Rdb_Config::selfSize](#selfsize) | 该结构体的大小。 |
323| [OH_Rdb_Config::dataBaseDir](#databasedir) | 数据库文件路径。 |
324| [OH_Rdb_Config::storeName](#storename) | 数据库名称。 |
325| [OH_Rdb_Config::bundleName](#bundlename) | 应用包名。 |
326| [OH_Rdb_Config::moduleName](#modulename) | 应用模块名。 |
327| [OH_Rdb_Config::isEncrypt](#isencrypt) | 指定数据库是否加密。 |
328| [OH_Rdb_Config::securityLevel](#securitylevel) | 设置数据库安全级别[OH_Rdb_SecurityLevel](#oh_rdb_securitylevel)。 |
329| [OH_Rdb_Config::area](#area) | 设置数据库安全区域等级[Rdb_SecurityArea](#rdb_securityarea)。 |
330| [OH_Rdb_Store::id](#id-55) | OH_Rdb_Store结构体的唯一标识符。 |
331| [Rdb_DistributedConfig::version](#version-13) | 用于唯一标识Rdb_DistributedConfig结构的版本。 |
332| [Rdb_DistributedConfig::isAutoSync](#isautosync) | 表示该表是否支持自动同步。 |
333| [Rdb_KeyInfo::count](#count) | 表示发生变化的主键或者行号的数量。 |
334| [Rdb_KeyInfo::type](#type) | 表示主键的类型[OH_ColumnType](#oh_columntype)。 |
335| [Rdb_KeyInfo::Rdb_KeyData::integer](#integer) | 存放uint64_t类型的数据。 |
336| [Rdb_KeyInfo::Rdb_KeyData::real](#real) | 存放double类型的数据。 |
337| [Rdb_KeyInfo::Rdb_KeyData::text](#text) | 存放char \*类型的数据。 |
338| [Rdb_KeyInfo::data](_rdb___key_info.md#成员变量) | 存放变化的具体数据。 |
339| [Rdb_ChangeInfo::version](#version-23) | 用于唯一标识Rdb_DistributedConfig结构的版本。 |
340| [Rdb_ChangeInfo::tableName](#tablename) | 表示发生变化的表的名称。 |
341| [Rdb_ChangeInfo::ChangeType](#changetype) | 表示发生变化的数据的类型,数据或者资产附件发生变化。 |
342| [Rdb_ChangeInfo::inserted](#inserted) | 记录插入数据的位置,如果该表的主键是string类型,该值是主键的值,否则该值表示插入数据的行号。 |
343| [Rdb_ChangeInfo::updated](#updated) | 记录更新数据的位置,如果该表的主键是string类型,该值是主键的值,否则该值表示更新数据的行号。 |
344| [Rdb_ChangeInfo::deleted](#deleted) | 记录删除数据的位置,如果该表的主键是string类型,该值是主键的值,否则该值表示删除数据的行号。 |
345| [Rdb_SubscribeCallback::detailsObserver](#detailsobserver) | 端云数据更改事件的细节的回调函数。 |
346| [Rdb_SubscribeCallback::briefObserver](#briefobserver) | 端云数据更改事件的回调函数。 |
347| [Rdb_DataObserver::context](#context-12) | 表示数据观察者的上下文。 |
348| [Rdb_DataObserver::callback](#callback-12) | 数据观察者的回调。 |
349| [Rdb_Statistic::total](#total) | 表示数据库表中需要端云同步的总行数。 |
350| [Rdb_Statistic::successful](#successful) | 表示数据库表中端云同步成功的行数。 |
351| [Rdb_Statistic::failed](#failed) | 表示数据库表中端云同步失败的行数。 |
352| [Rdb_Statistic::remained](#remained) | 表示数据库表中端云同步剩余未执行的行数。 |
353| [Rdb_TableDetails::table](#table) | 数据库表名。 |
354| [Rdb_TableDetails::upload](#upload) | 表示数据库表中端云同步上传过程的统计信息。 |
355| [Rdb_TableDetails::download](#download) | 表示数据库表中端云同步下载过程的统计信息。 |
356| [Rdb_ProgressDetails::version](#version-33) | 用于唯一标识OH_TableDetails结构的版本。 |
357| [Rdb_ProgressDetails::schedule](#schedule) | 表示端云同步过程。 |
358| [Rdb_ProgressDetails::code](#code) | 表示端云同步过程的状态。 |
359| [Rdb_ProgressDetails::tableLength](#tablelength) | 表示端云同步的表的数量 |
360| [Rdb_ProgressObserver::context](#context-22) | 端云同步进度观察者的上下文。 |
361| [Rdb_ProgressObserver::callback](#callback-22) | 端云同步进度观察者的回调函数。 |
362
363
364## 宏定义说明
365
366
367### DISTRIBUTED_CHANGE_INFO_VERSION
368
369```
370#define DISTRIBUTED_CHANGE_INFO_VERSION   1
371```
372
373**描述**
374
375描述[Rdb_ChangeInfo](_rdb___change_info.md)的版本。
376
377**起始版本:** 11
378
379
380### DISTRIBUTED_CONFIG_VERSION
381
382```
383#define DISTRIBUTED_CONFIG_VERSION   1
384```
385
386**描述**
387
388描述[Rdb_DistributedConfig](_rdb___distributed_config.md)的版本。
389
390**起始版本:** 11
391
392
393### DISTRIBUTED_PROGRESS_DETAIL_VERSION
394
395```
396#define DISTRIBUTED_PROGRESS_DETAIL_VERSION   1
397```
398
399**描述**
400
401描述**OH_ProgressDetails**的版本。
402
403**起始版本:** 11
404
405
406## 类型定义说明
407
408### Rdb_ConflictResolution
409
410```
411typedef enum Rdb_ConflictResolution Rdb_ConflictResolution
412```
413
414**描述**
415
416表示冲突解决策略的枚举。
417
418**起始版本:** 18
419
420### OH_ColumnType
421
422```
423typedef enum OH_ColumnType OH_ColumnType
424```
425
426**描述**
427
428表示列的类型。
429
430**起始版本:** 10
431
432### OH_Data_Value
433
434```
435typedef struct OH_Data_Value OH_Data_Value
436```
437
438**描述**
439
440定义[OH_Data_Value](#oh_data_value)结构类型。
441
442**起始版本:** 18
443
444
445### OH_Data_Values
446
447```
448typedef struct OH_Data_Values OH_Data_Values
449```
450
451**描述**
452
453定义[OH_Data_Values](#oh_data_values)结构类型。
454
455**起始版本:** 18
456
457
458### OH_Data_VBuckets
459
460```
461typedef struct OH_Data_VBuckets OH_Data_VBuckets
462```
463
464**描述**
465
466定义OH_Data_VBuckets结构类型。
467
468**起始版本:** 18
469
470### OH_Rdb_Transaction
471
472```
473typedef struct OH_Rdb_Transaction OH_Rdb_Transaction
474```
475
476**描述**
477
478定义[OH_Rdb_Transaction](#oh_rdb_transaction)结构类型。
479
480**起始版本:** 18
481
482
483### OH_RDB_TransOptions
484
485```
486typedef struct OH_RDB_TransOptions OH_RDB_TransOptions
487```
488
489**描述**
490
491定义[OH_RDB_TransOptions](#oh_rdb_transoptions)结构类型。
492
493**起始版本:** 18
494
495
496### OH_RDB_TransType
497
498```
499typedef enum OH_RDB_TransType OH_RDB_TransType
500```
501
502**描述**
503
504表示关系型数据库事务类型。
505
506**起始版本:** 18
507
508### Rdb_Tokenizer
509
510```
511typedef enum Rdb_Tokenizer Rdb_Tokenizer
512```
513
514**描述**
515
516描述数据库的分词器类型。
517
518**起始版本:** 17
519
520### OH_Rdb_ConfigV2
521
522```
523typedef struct OH_Rdb_ConfigV2 OH_Rdb_ConfigV2
524```
525
526**描述**
527
528管理关系数据库配置,与[OH_Rdb_Config](_o_h___rdb___config.md)的区别是该结构体成员变量不对外暴露,使用一系列方法配置该结构体的属性。
529
530**起始版本:** 14
531
532
533### Rdb_DBType
534
535```
536typedef enum Rdb_DBType Rdb_DBType
537```
538
539**描述**
540
541描述数据库的内核类型。
542
543**起始版本:** 14
544
545### OH_Cursor
546
547```
548typedef struct OH_Cursor OH_Cursor
549```
550
551**描述**
552
553表示结果集。
554
555提供通过查询数据库生成的数据库结果集的访问方法。
556
557**起始版本:** 10
558
559
560### OH_OrderType
561
562```
563typedef enum OH_OrderType OH_OrderType
564```
565
566**描述**
567
568排序方式。
569
570**起始版本:** 10
571
572
573### OH_Predicates
574
575```
576typedef struct OH_Predicates OH_Predicates
577```
578
579**描述**
580
581表示谓词。
582
583**起始版本:** 10
584
585
586### OH_Rdb_ErrCode
587
588```
589typedef enum OH_Rdb_ErrCode OH_Rdb_ErrCode
590```
591
592**描述**
593
594表示错误码信息。
595
596**起始版本:** 10
597
598
599### OH_Rdb_SecurityLevel
600
601```
602typedef enum OH_Rdb_SecurityLevel OH_Rdb_SecurityLevel
603```
604
605**描述**
606
607数据库的安全级别枚举。
608
609**起始版本:** 10
610
611
612### OH_VBucket
613
614```
615typedef struct OH_VBucket OH_VBucket
616```
617
618**描述**
619
620用于存储键值对的类型。
621
622**起始版本:** 10
623
624
625### OH_VObject
626
627```
628typedef struct OH_VObject OH_VObject
629```
630
631**描述**
632
633表示允许的数据字段类型。
634
635**起始版本:** 10
636
637
638### Rdb_BriefObserver
639
640```
641typedef void(* Rdb_BriefObserver) (void *context, const char *values[], uint32_t count)
642```
643
644**描述**
645
646端云数据更改事件的回调函数。
647
648**起始版本:** 11
649
650**参数:**
651
652| 名称 | 描述 |
653| -------- | -------- |
654| context | 表示数据观察者的上下文。 |
655| values | 表示更改的端云账号。 |
656| count | 表示更改的端云账号数量。 |
657
658
659### Rdb_ChangeInfo
660
661```
662typedef struct Rdb_ChangeInfo Rdb_ChangeInfo
663```
664
665**描述**
666
667记录端云同步过程详情。
668
669**起始版本:** 11
670
671
672### Rdb_ChangeType
673
674```
675typedef enum Rdb_ChangeType Rdb_ChangeType
676```
677
678**描述**
679
680描述数据变更类型。
681
682**起始版本:** 11
683
684
685### Rdb_DataObserver
686
687```
688typedef struct Rdb_DataObserver Rdb_DataObserver
689```
690
691**描述**
692
693表示数据观察者。
694
695**起始版本:** 11
696
697
698### Rdb_DetailsObserver
699
700```
701typedef void(* Rdb_DetailsObserver) (void *context, const Rdb_ChangeInfo **changeInfo, uint32_t count)
702```
703
704**描述**
705
706端云数据更改事件的细节的回调函数。
707
708**起始版本:** 11
709
710**参数:**
711
712| 名称 | 描述 |
713| -------- | -------- |
714| context | 表示数据观察者的上下文。 |
715| changeInfo | 表示已更改表的信息[Rdb_ChangeInfo](_rdb___change_info.md)。 |
716| count | 表示更改的表的数量。 |
717
718**参见:**
719
720[Rdb_ChangeInfo](_rdb___change_info.md).
721
722
723### Rdb_DistributedConfig
724
725```
726typedef struct Rdb_DistributedConfig Rdb_DistributedConfig
727```
728
729**描述**
730
731记录表的分布式配置信息。
732
733**起始版本:** 11
734
735
736### Rdb_DistributedType
737
738```
739typedef enum Rdb_DistributedType Rdb_DistributedType
740```
741
742**描述**
743
744描述表的分布式类型的枚举。
745
746**起始版本:** 11
747
748
749### Rdb_KeyInfo
750
751```
752typedef struct Rdb_KeyInfo Rdb_KeyInfo
753```
754
755**描述**
756
757描述发生变化的行的主键或者行号。
758
759**起始版本:** 11
760
761
762### Rdb_Progress
763
764```
765typedef enum Rdb_Progress Rdb_Progress
766```
767
768**描述**
769
770描述端云同步过程。
771
772**起始版本:** 11
773
774
775### Rdb_ProgressCallback
776
777```
778typedef void(* Rdb_ProgressCallback) (void *context, Rdb_ProgressDetails *progressDetails)
779```
780
781**描述**
782
783端云同步进度的回调函数。
784
785**起始版本:** 11
786
787**参数:**
788
789| 名称 | 描述 |
790| -------- | -------- |
791| progressDetails | 端云同步进度的详细信息。 |
792
793**参见:**
794
795[Rdb_ProgressDetails](_rdb___progress_details.md).
796
797
798### Rdb_ProgressCode
799
800```
801typedef enum Rdb_ProgressCode Rdb_ProgressCode
802```
803
804**描述**
805
806表示端云同步过程的状态。
807
808**起始版本:** 11
809
810
811### Rdb_ProgressDetails
812
813```
814typedef struct Rdb_ProgressDetails Rdb_ProgressDetails
815```
816
817**描述**
818
819描述数据库整体执行端云同步任务上传和下载的统计信息。
820
821**起始版本:** 11
822
823
824### Rdb_ProgressObserver
825
826```
827typedef struct Rdb_ProgressObserver Rdb_ProgressObserver
828```
829
830**描述**
831
832端云同步进度观察者。
833
834**起始版本:** 11
835
836
837### Rdb_SecurityArea
838
839```
840typedef enum Rdb_SecurityArea Rdb_SecurityArea
841```
842
843**描述**
844
845描述数据库的安全区域等级。
846
847**起始版本:** 11
848
849
850### Rdb_Statistic
851
852```
853typedef struct Rdb_Statistic Rdb_Statistic
854```
855
856**描述**
857
858描述数据库表的端云同步过程的统计信息。
859
860**起始版本:** 11
861
862
863### Rdb_SubscribeCallback
864
865```
866typedef union Rdb_SubscribeCallback Rdb_SubscribeCallback
867```
868
869**描述**
870
871表示回调函数。
872
873**起始版本:** 11
874
875
876### Rdb_SubscribeType
877
878```
879typedef enum Rdb_SubscribeType Rdb_SubscribeType
880```
881
882**描述**
883
884描述订阅类型。
885
886**起始版本:** 11
887
888
889### Rdb_SyncCallback
890
891```
892typedef void(* Rdb_SyncCallback) (Rdb_ProgressDetails *progressDetails)
893```
894
895**描述**
896
897数据库端云同步的回调函数。
898
899**起始版本:** 11
900
901**参数:**
902
903| 名称 | 描述 |
904| -------- | -------- |
905| progressDetails | 数据库端云同步的统计信息。 |
906
907**参见:**
908
909[OH_Rdb_Store](_o_h___rdb___store.md).
910
911
912### Rdb_SyncMode
913
914```
915typedef enum Rdb_SyncMode Rdb_SyncMode
916```
917
918**描述**
919
920表示数据库的同步模式。
921
922**起始版本:** 11
923
924
925### Rdb_TableDetails
926
927```
928typedef struct Rdb_TableDetails Rdb_TableDetails
929```
930
931**描述**
932
933描述数据库表执行端云同步任务上传和下载的统计信息。
934
935**起始版本:** 11
936
937## 枚举类型说明
938
939### Rdb_ConflictResolution
940
941```
942enum Rdb_ConflictResolution
943```
944
945**描述**
946
947表示冲突解决策略的枚举。
948
949**起始版本:** 18
950
951| 枚举值 | 描述 |
952| -------- | -------- |
953| RDB_CONFLICT_NONE | 发生冲突时不执行任何操作。 |
954| RDB_CONFLICT_ROLLBACK | 发生冲突时抛错误码,同时回滚本次事务。 |
955| RDB_CONFLICT_ABORT | 发生冲突时抛错误码,同时回滚本次修改。 |
956| RDB_CONFLICT_FAIL | 发生冲突时抛错误码,不回滚冲突前的修改同时终止本次修改。 |
957| RDB_CONFLICT_IGNORE | 发生冲突时忽略冲突的数据,继续执行后续修改。 |
958| RDB_CONFLICT_REPLACE | 发生冲突时,尝试删除后插入,如果还是冲突则等同于RDB_CONFLICT_ABORT。 |
959
960### OH_Rdb_ErrCode
961
962```
963enum OH_Rdb_ErrCode
964```
965
966**描述**
967
968表示错误码信息。
969
970**起始版本:** 10
971
972| 枚举值 | 描述 |
973| -------- | -------- |
974| RDB_ERR | 执行出错。 |
975| RDB_OK | 执行成功。 |
976| E_BASE | 异常错误代码的基础。 |
977| RDB_E_NOT_SUPPORTED | RDB不具备该能力。 |
978| RDB_E_ERROR | 常见异常的错误代码。 |
979| RDB_E_INVALID_ARGS | 参数非法。 |
980| RDB_E_CANNOT_UPDATE_READONLY | 更新只读数据库。 |
981| RDB_E_REMOVE_FILE | 删除文件失败。 |
982| RDB_E_EMPTY_TABLE_NAME | 表名为空。 |
983| RDB_E_EMPTY_VALUES_BUCKET | 键值对内容为空。 |
984| RDB_E_EXECUTE_IN_STEP_QUERY | 查询时执行的SQL语句错误。 |
985| RDB_E_INVALID_COLUMN_INDEX | 列索引非法。 |
986| RDB_E_INVALID_COLUMN_TYPE | 列类型非法。 |
987| RDB_E_EMPTY_FILE_NAME | 文件名称为空。 |
988| RDB_E_INVALID_FILE_PATH | 文件路径非法。 |
989| RDB_E_TRANSACTION_IN_EXECUTE | 开启事务执行出错。 |
990| RDB_E_INVALID_STATEMENT | SQL语句预编译出错。 |
991| RDB_E_EXECUTE_WRITE_IN_READ_CONNECTION | 在读连接中执行写操作。 |
992| RDB_E_BEGIN_TRANSACTION_IN_READ_CONNECTION | 在读连接中开启事务。 |
993| RDB_E_NO_TRANSACTION_IN_SESSION | 在数据库会话中不存在开启的事务。 |
994| RDB_E_MORE_STEP_QUERY_IN_ONE_SESSION | 在一个数据库会话中执行多次查询。 |
995| RDB_E_NO_ROW_IN_QUERY | 查询得到的结果集不存在任何记录。 |
996| RDB_E_INVALID_BIND_ARGS_COUNT | SQL语句中绑定的参数个数非法。 |
997| RDB_E_INVALID_OBJECT_TYPE | 对象类型非法。 |
998| RDB_E_INVALID_CONFLICT_FLAG | 冲突解决类型非法。 |
999| RDB_E_HAVING_CLAUSE_NOT_IN_GROUP_BY | HAVING关键字只能用于GROUP BY之后。 |
1000| RDB_E_NOT_SUPPORTED_BY_STEP_RESULT_SET | 不支持step形式数据库结果集。 |
1001| RDB_E_STEP_RESULT_SET_CROSS_THREADS | 结果集查询出错。 |
1002| RDB_E_STEP_RESULT_QUERY_NOT_EXECUTED | 结果集查询语句未被执行。 |
1003| RDB_E_STEP_RESULT_IS_AFTER_LAST | 结果集的游标已经处于最后一行。 |
1004| RDB_E_STEP_RESULT_QUERY_EXCEEDED | 结果集查询次数已经超过上限。 |
1005| RDB_E_STATEMENT_NOT_PREPARED | SQL语句未被预编译。 |
1006| RDB_E_EXECUTE_RESULT_INCORRECT | 数据库执行结果异常。 |
1007| RDB_E_STEP_RESULT_CLOSED | 结果集已经关闭。 |
1008| RDB_E_RELATIVE_PATH | 相对路径。 |
1009| RDB_E_EMPTY_NEW_ENCRYPT_KEY | 新的密钥文件为空。 |
1010| RDB_E_CHANGE_UNENCRYPTED_TO_ENCRYPTED | 将非加密的数据库更改为加密数据库。 |
1011| RDB_E_CHANGE_ENCRYPT_KEY_IN_BUSY | 在数据库繁忙时更新数据库密钥。 |
1012| RDB_E_STEP_STATEMENT_NOT_INIT | 预编译的SQL语句未被初始化。 |
1013| RDB_E_NOT_SUPPORTED_ATTACH_IN_WAL_MODE | 在WAL日志模式下不支持ATTACH操作。 |
1014| RDB_E_CREATE_FOLDER_FAIL | 创建文件夹失败。 |
1015| RDB_E_SQLITE_SQL_BUILDER_NORMALIZE_FAIL | SQL语句构建失败。 |
1016| RDB_E_STORE_SESSION_NOT_GIVE_CONNECTION_TEMPORARILY | 数据库会话暂未提供连接。 |
1017| RDB_E_STORE_SESSION_NO_CURRENT_TRANSACTION | 数据库会话不具有当前的事务。 |
1018| RDB_E_NOT_SUPPORT | 不支持当前操作。 |
1019| RDB_E_INVALID_PARCEL | 当前PARCEL非法。 |
1020| RDB_E_QUERY_IN_EXECUTE | 执行query查询出错。 |
1021| RDB_E_SET_PERSIST_WAL | 设置WAL模式下数据库文件的持久化时出错。 |
1022| RDB_E_DB_NOT_EXIST | 数据库不存在。 |
1023| RDB_E_ARGS_READ_CON_OVERLOAD | 设置的读连接数大于上限。 |
1024| RDB_E_WAL_SIZE_OVER_LIMIT | WAL日志文件大小超过默认值。 |
1025| RDB_E_CON_OVER_LIMIT | 数据库连接数已用完。 |
1026| RDB_E_ALREADY_CLOSED<sup>18+</sup> | 数据库已关闭。 |
1027| RDB_E_DATABASE_BUSY<sup>18+</sup> | 数据库无响应。 |
1028| RDB_E_SQLITE_CORRUPT<sup>18+</sup> | 数据库损坏。 |
1029| RDB_E_SQLITE_PERM<sup>18+</sup> | SQLite错误码:访问权限被拒绝。 |
1030| RDB_E_SQLITE_BUSY<sup>18+</sup> | SQLite错误码:数据库文件被锁定。 |
1031| RDB_E_SQLITE_LOCKED<sup>18+</sup> | SQLite错误码:数据库中的表被锁定。 |
1032| RDB_E_SQLITE_NOMEM<sup>18+</sup> | SQLite错误码:数据库内存不足。|
1033| RDB_E_SQLITE_READONLY<sup>18+</sup> | SQLite错误码:尝试写入只读数据库。 |
1034| RDB_E_SQLITE_IOERR<sup>18+</sup> | SQLite错误码:磁盘I/O错误。 |
1035| RDB_E_SQLITE_FULL<sup>18+</sup> | SQLite错误码:数据库已满。 |
1036| RDB_E_SQLITE_CANT_OPEN<sup>18+</sup> | SQLite错误码:无法打开数据库文件。 |
1037| RDB_E_SQLITE_TOO_BIG<sup>18+</sup> | SQLite错误码:TEXT或BLOB超出大小限制。 |
1038| RDB_E_SQLITE_MISMATCH<sup>18+</sup> | SQLite错误码:数据类型不匹配。 |
1039| RDB_E_DATA_TYPE_NULL<sup>18+</sup> | 表示存储数据为空。 |
1040| RDB_E_TYPE_MISMATCH<sup>18+</sup> | 表示数据类型不匹配。 |
1041| RDB_E_SQLITE_CONSTRAINT<sup>18+</sup> | 表示SQLite错误码:SQLite约束。 |
1042
1043### OH_ColumnType
1044
1045```
1046enum OH_ColumnType
1047```
1048
1049**描述**
1050
1051表示列的类型。
1052
1053**起始版本:** 10
1054
1055| 枚举值 | 描述 |
1056| -------- | -------- |
1057| TYPE_NULL | 表示NULL类型。 |
1058| TYPE_INT64 | 表示INT64数据类型。 |
1059| TYPE_REAL | 表示REAL数据类型。 |
1060| TYPE_TEXT | 表示TEXT数据类型。 |
1061| TYPE_BLOB | 表示BLOB数据类型。 |
1062| TYPE_ASSET<sup>11+</sup> | 表示ASSET(资产附件)数据类型。 |
1063| TYPE_ASSETS<sup>11+</sup> | 表示ASSETS(多个资产附件)数据类型。 |
1064| TYPE_FLOAT_VECTOR<sup>18+</sup> | 表示FLOAT VECTOR数据类型。 |
1065| TYPE_UNLIMITED_INT<sup>18+</sup> | 表示列类型为长度大于64位的数字。 |
1066
1067### OH_RDB_TransType
1068
1069```
1070enum OH_RDB_TransType
1071```
1072
1073**描述**
1074
1075表示关系型数据库事务类型。
1076
1077**起始版本:** 18
1078
1079| 枚举值 | 描述 |
1080| -------- | -------- |
1081| RDB_TRANS_DEFERRED | 在首次访问数据库之前,事务默认设置不会启动。 |
1082| RDB_TRANS_IMMEDIATE | 数据库连接立即开始新的写入,而无需等待写入语句。 |
1083| RDB_TRANS_EXCLUSIVE | 与RDB_TRANS_IMMEDIATE类型相似,写事务会立即启动。RDB_TRANS_EXCLUSIVE和RDB_TRANS_IMMEDIATE类型在WAL模式下相同,但在其他日志模式下,RDB_TRANS_EXCLUSIVE会阻止其他数据库连接在事务进行时读取数据库。 |
1084| RDB_TRANS_BUTT | RDB事务类型的最大值。 |
1085
1086### Rdb_Tokenizer
1087
1088```
1089enum Rdb_Tokenizer
1090```
1091
1092**描述**
1093
1094描述数据库的分词器类型。
1095
1096**起始版本:** 17
1097
1098| 枚举值 | 描述 |
1099| -------- | -------- |
1100| RDB_NONE_TOKENIZER | 表示不使用分词器。 |
1101| RDB_ICU_TOKENIZER | 表示使用原生ICU分词器。 |
1102| RDB_CUSTOM_TOKENIZER<sup>18+</sup> | 表示使用CUSTOM分词器。 |
1103
1104### Rdb_DBType
1105
1106```
1107enum Rdb_DBType
1108```
1109
1110**描述**
1111
1112描述数据库的内核类型。
1113
1114**起始版本:** 14
1115
1116| 枚举值 | 描述 |
1117| -------- | -------- |
1118| RDB_SQLITE | 表示使用sqlite作为数据库内核。 |
1119| RDB_CAYLEY | 表示使用凯莱数据库作为数据库内核。 |
1120| DBTYPE_BUTT | 表示内核类型枚举值允许取值的最大值,这是一个非法值。 |
1121
1122### OH_Rdb_SecurityLevel
1123
1124```
1125enum OH_Rdb_SecurityLevel
1126```
1127
1128**描述**
1129
1130数据库的安全级别枚举。
1131
1132**起始版本:** 10
1133
1134| 枚举值 | 描述 |
1135| -------- | -------- |
1136| S1 | S1: 表示数据库的安全级别为低级别。<br/>当数据泄露时会产生较低影响。 |
1137| S2 | S2: 表示数据库的安全级别为中级别。<br/>当数据泄露时会产生较大影响。 |
1138| S3 | S3: 表示数据库的安全级别为高级别。<br/>当数据泄露时会产生重大影响。 |
1139| S4 | S4: 表示数据库的安全级别为关键级别。<br/>当数据泄露时会产生严重影响。 |
1140
1141
1142### Rdb_ChangeType
1143
1144```
1145enum Rdb_ChangeType
1146```
1147
1148**描述**
1149
1150描述数据变更类型。
1151
1152**起始版本:** 11
1153
1154| 枚举值 | 描述 |
1155| -------- | -------- |
1156| RDB_DATA_CHANGE | 表示是数据发生变更。 |
1157| RDB_ASSET_CHANGE | 表示是资产附件发生了变更。 |
1158
1159
1160### Rdb_DistributedType
1161
1162```
1163enum Rdb_DistributedType
1164```
1165
1166**描述**
1167
1168描述表的分布式类型的枚举。
1169
1170**起始版本:** 11
1171
1172| 枚举值 | 描述 |
1173| -------- | -------- |
1174| RDB_DISTRIBUTED_CLOUD | 表示在设备和云端之间分布式的数据库表。 |
1175
1176
1177### Rdb_Progress
1178
1179```
1180enum Rdb_Progress
1181```
1182
1183**描述**
1184
1185描述端云同步过程。
1186
1187**起始版本:** 11
1188
1189| 枚举值 | 描述 |
1190| -------- | -------- |
1191| RDB_SYNC_BEGIN | 表示端云同步过程开始。 |
1192| RDB_SYNC_IN_PROGRESS | 表示正在端云同步过程中。 |
1193| RDB_SYNC_FINISH | 表示端云同步过程已完成。 |
1194
1195
1196### Rdb_ProgressCode
1197
1198```
1199enum Rdb_ProgressCode
1200```
1201
1202**描述**
1203
1204表示端云同步过程的状态。
1205
1206**起始版本:** 11
1207
1208| 枚举值 | 描述 |
1209| -------- | -------- |
1210| RDB_SUCCESS | 表示端云同步过程成功。 |
1211| RDB_UNKNOWN_ERROR | 表示端云同步过程遇到未知错误。 |
1212| RDB_NETWORK_ERROR | 表示端云同步过程遇到网络错误。 |
1213| RDB_CLOUD_DISABLED | 表示云端不可用。 |
1214| RDB_LOCKED_BY_OTHERS | 表示有其他设备正在端云同步,本设备无法进行端云同步。 |
1215| RDB_RECORD_LIMIT_EXCEEDED | 表示本次端云同步需要同步的条目或大小超出最大值。由云端配置最大值。 |
1216| RDB_NO_SPACE_FOR_ASSET | 表示云空间剩余空间小于待同步的资产大小。 |
1217
1218
1219### Rdb_SecurityArea
1220
1221```
1222enum Rdb_SecurityArea
1223```
1224
1225**描述**
1226
1227描述数据库的安全区域等级。
1228
1229**起始版本:** 11
1230
1231| 枚举值 | 描述 |
1232| -------- | -------- |
1233| RDB_SECURITY_AREA_EL1 | 安全区域等级为1。 |
1234| RDB_SECURITY_AREA_EL2 | 安全区域等级为2。 |
1235| RDB_SECURITY_AREA_EL3 | 安全区域等级为3。 |
1236| RDB_SECURITY_AREA_EL4 | 安全区域等级为4。 |
1237| RDB_SECURITY_AREA_EL5<sup>12+</sup> | 安全区域等级为5。 |
1238
1239
1240### Rdb_SubscribeType
1241
1242```
1243enum Rdb_SubscribeType
1244```
1245
1246**描述**
1247
1248描述订阅类型。
1249
1250**起始版本:** 11
1251
1252| 枚举值 | 描述 |
1253| -------- | -------- |
1254| RDB_SUBSCRIBE_TYPE_CLOUD | 订阅云端数据更改。 |
1255| RDB_SUBSCRIBE_TYPE_CLOUD_DETAILS | 订阅云端数据更改详情。 |
1256| RDB_SUBSCRIBE_TYPE_LOCAL_DETAILS<sup>12+</sup>  | 订阅本地数据更改详情。从API version 12开始支持此枚举。 |
1257
1258
1259### Rdb_SyncMode
1260
1261```
1262enum Rdb_SyncMode
1263```
1264
1265**描述**
1266
1267表示数据库的同步模式。
1268
1269**起始版本:** 11
1270
1271| 枚举值 | 描述 |
1272| -------- | -------- |
1273| RDB_SYNC_MODE_TIME_FIRST | 表示数据从修改时间较近的一端同步到修改时间较远的一端。 |
1274| RDB_SYNC_MODE_NATIVE_FIRST | 表示数据从本地设备同步到云端。 |
1275| RDB_SYNC_MODE_CLOUD_FIRST | 表示数据从云端同步到本地设备。 |
1276
1277
1278## 函数说明
1279
1280### OH_RdbTrans_BatchInsert()
1281
1282```
1283int OH_RdbTrans_BatchInsert (OH_Rdb_Transaction *trans, const char *table, const OH_Data_VBuckets *rows, Rdb_ConflictResolution resolution, int64_t *changes)
1284```
1285
1286**描述**
1287
1288将一组数据批量插入到目标表中。
1289
1290**起始版本:** 18
1291
1292**参数:**
1293
1294| 名称 | 描述 |
1295| -------- | -------- |
1296| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
1297| table | 表示目标表。 |
1298| rows | 表示要插入到表中的一组数据。 |
1299| resolution | 表示发生冲突时的解决策略。 |
1300| changes | 输出参数,表示插入成功的次数。 |
1301
1302**返回:**
1303
1304返回执行结果。
1305
1306返回RDB_OK表示成功。
1307
1308返回RDB_E_ERROR表示数据库常见错误。
1309
1310返回RDB_E_INVALID_ARGS表示无效参数。
1311
1312返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
1313
1314返回RDB_E_WAL_SIZE_OVER_LIMIT表示WAL日志文件大小超过默认值。
1315
1316返回RDB_E_SQLITE_FULL表示SQLite错误码:数据库已满。
1317
1318返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
1319
1320返回RDB_E_SQLITE_PERM表示SQLite错误码:访问权限被拒绝。
1321
1322返回RDB_E_SQLITE_BUSY表示SQLite错误码:数据库文件被锁定。
1323
1324返回RDB_E_SQLITE_LOCKED表示SQLite错误码:数据库中的表被锁定。
1325
1326返回RDB_E_SQLITE_NOMEM表示SQLite错误码:数据库内存不足。
1327
1328返回RDB_E_SQLITE_READONLY表示SQLite错误码:尝试写入只读数据库。
1329
1330返回RDB_E_SQLITE_IOERR表示SQLite错误码:磁盘I/O错误。
1331
1332返回RDB_E_SQLITE_TOO_BIG表示SQLite错误码:TEXT或BLOB超出大小限制。
1333
1334返回RDB_E_SQLITE_MISMATCH表示SQLite错误码:数据类型不匹配。
1335
1336返回RDB_E_SQLITE_CONSTRAINT表示SQLite错误码:SQLite约束。
1337
1338
1339### OH_Rdb_BatchInsert()
1340
1341```
1342int OH_Rdb_BatchInsert (OH_Rdb_Store *store, const char *table, const OH_Data_VBuckets *rows, Rdb_ConflictResolution resolution, int64_t *changes )
1343```
1344
1345**描述**
1346
1347将一批数据插入到目标表中。
1348
1349**起始版本:** 18
1350
1351**参数:**
1352
1353| 名称 | 描述 |
1354| -------- | -------- |
1355| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
1356| tables | 要设置的分布式数据库表表名。 |
1357| rows | 表示要插入到表中的一组数据。 |
1358| resolution | 表示发生冲突时的解决策略。 |
1359| changes | 输出参数,表示插入成功的次数。 |
1360
1361**返回:**
1362
1363返回执行结果。
1364
1365返回RDB_OK表示成功。
1366
1367返回RDB_E_ERROR表示数据库常见错误。
1368
1369返回RDB_E_INVALID_ARGS表示无效参数。
1370
1371返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
1372
1373返回RDB_E_WAL_SIZE_OVER_LIMIT表示WAL日志文件大小超过默认值。
1374
1375返回RDB_E_SQLITE_FULL表示SQLite错误码:数据库已满。
1376
1377返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
1378
1379返回RDB_E_SQLITE_PERM表示SQLite错误码:访问权限被拒绝。
1380
1381返回RDB_E_SQLITE_BUSY表示SQLite错误码:数据库文件被锁定。
1382
1383返回RDB_E_SQLITE_LOCKED表示SQLite错误码:数据库中的表被锁定。
1384
1385返回RDB_E_SQLITE_NOMEM表示SQLite错误码:数据库内存不足。
1386
1387返回RDB_E_SQLITE_READONLY表示SQLite错误码:尝试写入只读数据库。
1388
1389返回RDB_E_SQLITE_IOERR表示SQLite错误码:磁盘I/O错误。
1390
1391返回RDB_E_SQLITE_TOO_BIG表示SQLite错误码:TEXT或BLOB超出大小限制。
1392
1393返回RDB_E_SQLITE_MISMATCH表示SQLite错误码:数据类型不匹配。
1394
1395返回RDB_E_SQLITE_CONSTRAINT表示SQLite错误码:SQLite约束。
1396
1397
1398### OH_Rdb_SetPersistent()
1399
1400```
1401int OH_Rdb_SetPersistent (OH_Rdb_ConfigV2 *config, bool isPersistent )
1402```
1403
1404**描述**
1405
1406指定数据库是否需要持久化。
1407
1408**参数:**
1409
1410| 名称 | 描述 |
1411| -------- | -------- |
1412| config | 表示指向OH_Rdb_ConfigV2实例的指针。指示与此RDB存储相关的数据库的配置。|
1413| isPersistent | 指示数据库是否需要持久性。 |
1414
1415**返回:**
1416
1417返回执行的状态代码。RDB_OK表示成功。RDB_E_INVALID_ARGS表示无效参数。|
1418
1419### OH_Cursor_GetFloatVector()
1420
1421```
1422int OH_Cursor_GetFloatVector (OH_Cursor *cursor, int32_t columnIndex, float *val, size_t inLen, size_t *outLen )
1423```
1424
1425**描述**
1426
1427以浮点数数组的形式获取当前行中指定列的值。
1428
1429**起始版本:** 18
1430
1431**参数:**
1432
1433| 名称 | 描述 |
1434| -------- | -------- |
1435| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
1436| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
1437| val | 该参数是输出参数,结果集中指定列的值会以浮点数数组形式写入该变量,调用者需要申请数组内存。 |
1438| inLen | 表示申请的浮点数数组大小。 |
1439| outLen | 该参数是输出参数,表示实际浮点数数组的大小。 |
1440
1441**返回:**
1442
1443返回执行结果。
1444
1445返回RDB_OK表示成功。
1446
1447返回RDB_E_ERROR表示数据库常见错误。
1448
1449返回RDB_E_INVALID_ARGS表示无效参数。
1450
1451返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
1452
1453返回RDB_E_STEP_RESULT_CLOSED表示查询到的结果集已经关闭。
1454
1455返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
1456
1457返回RDB_E_SQLITE_PERM表示SQLite错误:访问权限被拒绝。
1458
1459返回RDB_E_SQLITE_BUSY表示SQLite错误:数据库文件被锁定。
1460
1461返回RDB_E_SQLITE_LOCKED表示SQLite错误码:数据库中的表被锁定。
1462
1463返回RDB_E_SQLITE_NOMEM表示SQLite错误:数据库内存不足。
1464
1465返回RDB_E_SQLITE_IOERR表示SQLite错误:磁盘I/O错误。
1466
1467返回RDB_E_SQLITE_TOO_BIG表示SQLite错误码:TEXT或BLOB超出大小限制。返回RDB_E_SQLITE_MISMATCH表示SQLite错误码:数据类型不匹配。
1468
1469**参见:**
1470
1471[OH_Cursor_GetFloatVectorCount](#oh_cursor_getfloatvectorcount).
1472
1473
1474### OH_Cursor_GetFloatVectorCount()
1475
1476```
1477int OH_Cursor_GetFloatVectorCount (OH_Cursor *cursor, int32_t columnIndex, size_t *length )
1478```
1479
1480**描述**
1481
1482获取当前行中指定列的浮点数数组大小。
1483
1484**起始版本:** 18
1485
1486**参数:**
1487
1488| 名称 | 描述 |
1489| -------- | -------- |
1490| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
1491| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
1492| length | 该参数是输出参数,结果集中指定列的浮点数数组大小会写入该变量。 |
1493
1494**返回:**
1495
1496返回执行结果。
1497
1498返回RDB_OK表示成功。
1499
1500返回RDB_E_ERROR表示数据库常见错误。
1501
1502返回RDB_E_INVALID_ARGS表示无效参数。
1503
1504返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
1505
1506返回RDB_E_STEP_RESULT_CLOSED表示查询到的结果集已经关闭。
1507
1508返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
1509
1510返回RDB_E_SQLITE_PERM表示SQLite错误:访问权限被拒绝。
1511
1512返回RDB_E_SQLITE_BUSY表示SQLite错误:数据库文件被锁定。
1513
1514返回RDB_E_SQLITE_LOCKED表示SQLite错误码:数据库中的表被锁定。
1515
1516返回RDB_E_SQLITE_NOMEM表示SQLite错误:数据库内存不足。
1517
1518返回RDB_E_SQLITE_IOERR表示SQLite错误:磁盘I/O错误。
1519
1520返回RDB_E_SQLITE_TOO_BIG表示SQLite错误码:TEXT或BLOB超出大小限制。
1521
1522返回RDB_E_SQLITE_MISMATCH表示SQLite错误码:数据类型不匹配。
1523
1524### OH_Rdb_CreateTransaction()
1525
1526```
1527int OH_Rdb_CreateTransaction (OH_Rdb_Store *store, const OH_RDB_TransOptions *options, OH_Rdb_Transaction **trans )
1528```
1529
1530**描述**
1531
1532创建一个事务对象。
1533
1534**起始版本:** 18
1535
1536**参数:**
1537
1538| 名称 | 描述 |
1539| -------- | -------- |
1540| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
1541| options | 表示指向[OH_RDB_TransOptions](#oh_rdb_transoptions)实例的指针。 |
1542| trans | 输出参数,表示执行成功时指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。否则返回 nullptr。使用完成后,必须通过[OH_RdbTrans_Destroy](#oh_rdbtrans_destroy)接口释放内存。 |
1543
1544**返回:**
1545
1546返回执行结果。
1547
1548返回RDB_OK表示成功。
1549
1550返回RDB_E_ERROR表示数据库常见错误。
1551
1552返回RDB_E_INVALID_ARGS表示无效参数。
1553
1554返回RDB_E_ALREADY_CLOSED表示数据库已关闭。
1555
1556返回RDB_E_DATABASE_BUSY表示数据库无响应。
1557
1558返回RDB_E_SQLITE_FULL表示SQLite错误:数据库已满。
1559
1560返回RDB_E_SQLITE_CORRUPT表示数据库已损坏。
1561
1562返回RDB_E_SQLITE_PERM表示SQLite错误:访问权限被拒绝。
1563
1564返回RDB_E_SQLITE_BUSY表示SQLite错误:数据库文件被锁定。
1565
1566返回RDB_E_SQLITE_NOMEM表示SQLite错误:数据库内存不足。
1567
1568返回RDB_E_SQLITE_IOERR表示SQLite错误:磁盘I/O错误。
1569
1570返回RDB_E_SQLITE_CANT_OPEN表示SQLite错误:无法打开数据库文件。
1571
1572**参见:**
1573
1574[OH_RdbTrans_Destroy](#oh_rdbtrans_destroy).
1575
1576
1577### OH_Rdb_ExecuteQueryV2()
1578
1579```
1580OH_Cursor *OH_Rdb_ExecuteQueryV2 (OH_Rdb_Store *store, const char *sql, const OH_Data_Values *args )
1581```
1582
1583**描述**
1584
1585根据指定SQL语句查询数据库中的数据,支持向量数据库。
1586
1587**起始版本:** 18
1588
1589**参数:**
1590
1591| 名称 | 描述 |
1592| -------- | -------- |
1593| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
1594| sql | 指定要执行的SQL语句。 |
1595| args | 可选参数,表示指向OH_Data_Values实例的指针。 |
1596
1597**返回:**
1598
1599如果查询成功则返回一个指向[OH_Cursor](_o_h___cursor.md)结构体实例的指针,使用完成后及时释放[OH_Cursor](_o_h___cursor.md)。如果SQL语句无效或内存分配失败,则返回NULL。
1600
1601**参见:**
1602
1603[OH_Rdb_Store](_o_h___rdb___store.md).
1604
1605
1606### OH_Rdb_ExecuteV2()
1607
1608```
1609int OH_Rdb_ExecuteV2 (OH_Rdb_Store *store, const char *sql, const OH_Data_Values *args, OH_Data_Value **result )
1610```
1611
1612**描述**
1613
1614执行有返回值的SQL语句,支持向量数据库。
1615
1616**起始版本:** 18
1617
1618**参数:**
1619
1620| 名称 | 描述 |
1621| -------- | -------- |
1622| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
1623| sql | 指定要执行的SQL语句。 |
1624| args | 可选参数,表示指向{\@OH_Data_Values}实例的指针。 |
1625| result | 执行成功时指向[OH_Data_Value](#oh_data_value)实例的指针,作为出参使用。<br/>使用完成后,必须通过[OH_Value_Destroy](#oh_value_destroy)接口释放内存。 |
1626
1627**返回:**
1628
1629返回执行结果。
1630
1631返回RDB_OK表示成功。
1632
1633返回RDB_E_ERROR表示数据库常见错误。
1634
1635返回RDB_E_INVALID_ARGS表示无效参数。
1636
1637返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
1638
1639返回RDB_E_WAL_SIZE_OVER_LIMIT表示WAL日志文件大小超过默认值。
1640
1641返回RDB_E_SQLITE_FULL表示SQLite错误码:数据库已满。
1642
1643返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
1644
1645返回RDB_E_SQLITE_PERM表示SQLite错误码:访问权限被拒绝。
1646
1647返回RDB_E_SQLITE_BUSY表示SQLite错误码:数据库文件被锁定。
1648
1649返回RDB_E_SQLITE_LOCKED表示SQLite错误码:数据库中的表被锁定。
1650
1651返回RDB_E_SQLITE_NOMEM表示SQLite错误码:数据库内存不足。
1652
1653返回RDB_E_SQLITE_READONLY表示SQLite错误码:尝试写入只读数据库。
1654
1655返回RDB_E_SQLITE_IOERR表示SQLite错误码:磁盘I/O错误。
1656
1657返回RDB_E_SQLITE_TOO_BIG表示SQLite错误码:TEXT或BLOB超出大小限制。
1658
1659返回RDB_E_SQLITE_MISMATCH表示SQLite错误码:数据类型不匹配。
1660
1661**参见:**
1662
1663[OH_Value_Destroy](#oh_value_destroy).
1664
1665
1666### OH_Rdb_IsTokenizerSupported()
1667
1668```
1669int OH_Rdb_IsTokenizerSupported (Rdb_Tokenizer tokenizer, bool *isSupported )
1670```
1671
1672**描述**
1673
1674判断当前平台是否支持传入的分词器。
1675
1676**起始版本:** 18
1677
1678**参数:**
1679
1680| 名称 | 描述 |
1681| -------- | -------- |
1682| tokenizer | 要校验是否支持的分词器。 |
1683| isSupported | 校验结果的指针,作为出参使用。<br/>true表示当前平台支持当前校验的分词器,false表示当前平台不支持当前校验的分词器。 |
1684
1685**返回:**
1686
1687返回接口操作执行的状态码。
1688
1689RDB_OK 表示成功。
1690
1691RDB_E_INVALID_ARGS 表示无效参数。
1692
1693
1694### OH_Rdb_SetTokenizer()
1695
1696```
1697int OH_Rdb_SetTokenizer (OH_Rdb_ConfigV2 *config, Rdb_Tokenizer tokenizer )
1698```
1699
1700**描述**
1701
1702给指定的数据库文件配置设置分词器类型。
1703
1704**起始版本:** 17
1705
1706**参数:**
1707
1708| 名称 | 描述 |
1709| -------- | -------- |
1710| config | 表示指向此RDB存储相关的数据库配置的指针。 |
1711| tokenizer | 表示数据库的分词器类型。 |
1712
1713**返回:**
1714
1715返回接口操作执行的状态码。
1716
1717RDB_OK 表示成功。
1718
1719RDB_E_INVALID_ARGS 表示无效参数。
1720
1721RDB_E_NOT_SUPPORTED 表示不支持当前操作。
1722
1723### OH_RdbTrans_Commit()
1724
1725```
1726int OH_RdbTrans_Commit (OH_Rdb_Transaction *trans)
1727```
1728
1729**描述**
1730
1731提交事务。
1732
1733**起始版本:** 18
1734
1735**参数:**
1736
1737| 名称 | 描述 |
1738| -------- | -------- |
1739| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
1740
1741**返回:**
1742
1743返回执行结果。
1744
1745返回RDB_OK表示成功。
1746
1747返回RDB_E_ERROR表示数据库常见错误。
1748
1749返回RDB_E_INVALID_ARGS表示无效参数。
1750
1751返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
1752
1753返回RDB_E_SQLITE_FULL表示SQLite错误码:数据库已满。
1754
1755返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
1756
1757返回RDB_E_SQLITE_PERM表示SQLite错误码:访问权限被拒绝。
1758
1759返回RDB_E_SQLITE_BUSY表示SQLite错误码:数据库文件被锁定。
1760
1761返回RDB_E_SQLITE_NOMEM表示SQLite错误码:数据库内存不足。
1762
1763返回RDB_E_SQLITE_READONLY表示SQLite错误码:尝试写入只读数据库。
1764
1765返回RDB_E_SQLITE_IOERR表示SQLite错误码:磁盘I/O错误。
1766
1767### OH_RdbTrans_Delete()
1768
1769```
1770int OH_RdbTrans_Delete (OH_Rdb_Transaction *trans, const OH_Predicates *predicates, int64_t *changes )
1771```
1772
1773**描述**
1774
1775根据指定条件从数据库中删除数据。
1776
1777**起始版本:** 18
1778
1779**参数:**
1780
1781| 名称 | 描述 |
1782| -------- | -------- |
1783| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
1784| predicates | 表示[OH_Predicates](_o_h___predicates.md)指定的删除条件。 |
1785| changes | 表示删除成功的次数。 |
1786
1787**返回:**
1788
1789返回执行结果。
1790
1791返回RDB_OK表示成功。
1792
1793返回RDB_E_ERROR表示数据库常见错误。
1794
1795返回RDB_E_INVALID_ARGS表示无效参数。
1796
1797返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
1798
1799返回RDB_E_WAL_SIZE_OVER_LIMIT表示WAL日志文件大小超过默认值。
1800
1801返回RDB_E_SQLITE_FULL表示SQLite错误码:数据库已满。
1802
1803返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
1804
1805返回RDB_E_SQLITE_PERM表示SQLite错误码:访问权限被拒绝。
1806
1807返回RDB_E_SQLITE_BUSY表示SQLite错误码:数据库文件被锁定。
1808
1809返回RDB_E_SQLITE_LOCKED表示SQLite错误码:数据库中的表被锁定。
1810
1811返回RDB_E_SQLITE_NOMEM表示SQLite错误码:数据库内存不足。
1812
1813返回RDB_E_SQLITE_READONLY表示SQLite错误码:尝试写入只读数据库。
1814
1815返回RDB_E_SQLITE_IOERR表示SQLite错误码:磁盘I/O错误。
1816
1817返回RDB_E_SQLITE_TOO_BIG表示SQLite错误码:TEXT或BLOB超出大小限制。
1818
1819返回RDB_E_SQLITE_MISMATCH表示SQLite错误码:数据类型不匹配。
1820
1821### OH_RdbTrans_CreateOptions()
1822
1823```
1824OH_RDB_TransOptions* OH_RdbTrans_CreateOptions (void )
1825```
1826
1827**描述**
1828
1829创建事务配置对象。
1830
1831**起始版本:** 18
1832
1833**返回:**
1834
1835执行成功时返回指向[OH_RDB_TransOptions](#oh_rdb_transoptions)实例的指针。否则返回nullptr。使用完成后,必须通过[OH_RdbTrans_DestroyOptions](#oh_rdbtrans_destroyoptions)接口释放内存。
1836
1837**参见:**
1838
1839[OH_RdbTrans_DestroyOptions](#oh_rdbtrans_destroyoptions).
1840
1841### OH_RdbTrans_Destroy()
1842
1843```
1844int OH_RdbTrans_Destroy (OH_Rdb_Transaction *trans)
1845```
1846
1847**描述**
1848
1849销毁事务对象。
1850
1851**起始版本:** 18
1852
1853**参数:**
1854
1855| 名称 | 描述 |
1856| -------- | -------- |
1857| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
1858
1859**返回:**
1860
1861返回错误码。
1862
1863返回RDB_OK表示成功。
1864
1865返回RDB_E_INVALID_ARGS表示无效参数。
1866
1867
1868### OH_RdbTrans_DestroyOptions()
1869
1870```
1871int OH_RdbTrans_DestroyOptions (OH_RDB_TransOptions *opitons)
1872```
1873
1874**描述**
1875
1876销毁事务配置对象。
1877
1878**起始版本:** 18
1879
1880**参数:**
1881
1882| 名称 | 描述 |
1883| -------- | -------- |
1884| opitons | 表示指向[OH_RDB_TransOptions](#oh_rdb_transoptions)实例的指针。 |
1885
1886**返回:**
1887
1888返回错误码。
1889
1890返回RDB_OK表示成功。
1891
1892返回RDB_E_INVALID_ARGS表示无效参数。
1893
1894
1895### OH_RdbTrans_Execute()
1896
1897```
1898int OH_RdbTrans_Execute (OH_Rdb_Transaction *trans, const char *sql, const OH_Data_Values *args, OH_Data_Value **result )
1899```
1900
1901**描述**
1902
1903执行包含指定参数的SQL语句。
1904
1905**起始版本:** 18
1906
1907**参数:**
1908
1909| 名称 | 描述 |
1910| -------- | -------- |
1911| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
1912| sql | 表示要执行的SQL语句。 |
1913| args | SQL语句中包含的参数。 |
1914| result | 执行成功时指向[OH_Data_Value](#oh_data_value)实例的指针。使用完成后,必须通过[OH_Value_Destroy](#oh_value_destroy)接口释放内存。 |
1915
1916**返回:**
1917
1918返回执行结果。
1919
1920返回RDB_OK表示成功。
1921
1922返回RDB_E_ERROR表示数据库常见错误。
1923
1924返回RDB_E_INVALID_ARGS表示无效参数。
1925
1926返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
1927
1928返回RDB_E_WAL_SIZE_OVER_LIMIT表示WAL日志文件大小超过默认值。
1929
1930返回RDB_E_SQLITE_FULL表示SQLite错误码:数据库已满。
1931
1932返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
1933
1934返回RDB_E_SQLITE_PERM表示SQLite错误码:访问权限被拒绝。
1935
1936返回RDB_E_SQLITE_BUSY表示SQLite错误码:数据库文件被锁定。
1937
1938返回RDB_E_SQLITE_LOCKED表示SQLite错误码:数据库中的表被锁定。
1939
1940返回RDB_E_SQLITE_NOMEM表示SQLite错误码:数据库内存不足。
1941
1942返回RDB_E_SQLITE_READONLY表示SQLite错误码:尝试写入只读数据库。
1943
1944返回RDB_E_SQLITE_IOERR表示SQLite错误码:磁盘I/O错误。
1945
1946返回RDB_E_SQLITE_TOO_BIG表示SQLite错误码:TEXT或BLOB超出大小限制。
1947
1948返回RDB_E_SQLITE_MISMATCH表示SQLite错误码:数据类型不匹配。
1949
1950**参见:**
1951
1952[OH_Value_Destroy](#oh_value_destroy).
1953
1954
1955### OH_RdbTrans_Insert()
1956
1957```
1958int OH_RdbTrans_Insert (OH_Rdb_Transaction *trans, const char *table, const OH_VBucket *row, int64_t *rowId )
1959```
1960
1961**描述**
1962
1963将一行数据插入到目标表中。
1964
1965**起始版本:** 18
1966
1967**参数:**
1968
1969| 名称 | 描述 |
1970| -------- | -------- |
1971| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
1972| table | 表示目标表。 |
1973| row | 表示要插入到表中的数据行。 |
1974| rowId | 输出参数,表示插入后返回的行号。 |
1975
1976**返回:**
1977
1978返回执行结果。
1979
1980返回RDB_OK表示成功。
1981
1982返回RDB_E_ERROR表示数据库常见错误。
1983
1984返回RDB_E_INVALID_ARGS表示无效参数。
1985
1986返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
1987
1988返回RDB_E_WAL_SIZE_OVER_LIMIT表示WAL日志文件大小超过默认值。
1989
1990返回RDB_E_SQLITE_FULL表示SQLite错误码:数据库已满。
1991
1992返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
1993
1994返回RDB_E_SQLITE_PERM表示SQLite错误码:访问权限被拒绝。
1995
1996返回RDB_E_SQLITE_BUSY表示SQLite错误码:数据库文件被锁定。
1997
1998返回RDB_E_SQLITE_LOCKED表示SQLite错误码:数据库中的表被锁定。
1999
2000返回RDB_E_SQLITE_NOMEM表示SQLite错误码:数据库内存不足。
2001
2002返回RDB_E_SQLITE_READONLY表示SQLite错误码:尝试写入只读数据库。
2003
2004返回RDB_E_SQLITE_IOERR表示SQLite错误码:磁盘I/O错误。
2005
2006返回RDB_E_SQLITE_TOO_BIG表示SQLite错误码:TEXT或BLOB超出大小限制。
2007
2008返回RDB_E_SQLITE_MISMATCH表示SQLite错误码:数据类型不匹配。
2009
2010### OH_RdbTrans_Query()
2011
2012```
2013OH_Cursor* OH_RdbTrans_Query (OH_Rdb_Transaction *trans, const OH_Predicates *predicates, const char *columns[], int len )
2014```
2015
2016**描述**
2017
2018根据指定的条件查询数据库中的数据。
2019
2020**起始版本:** 18
2021
2022**参数:**
2023
2024| 名称 | 描述 |
2025| -------- | -------- |
2026| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
2027| predicates | 表示[OH_Predicates](_o_h___predicates.md)指定的查询条件。 |
2028| columns | 表示要查询的列,如果传入空值,则查询适用于所有列。 |
2029| len | 表示列中元素的个数。 |
2030
2031**返回:**
2032
2033如果执行成功,则返回指向[OH_Cursor](_o_h___cursor.md)实例的指针。如果数据库已关闭或数据库没有响应,则返回空。
2034
2035
2036### OH_RdbTrans_QuerySql()
2037
2038```
2039OH_Cursor* OH_RdbTrans_QuerySql (OH_Rdb_Transaction *trans, const char *sql, const OH_Data_Values *args )
2040```
2041
2042**描述**
2043
2044根据SQL语句查询数据库中的数据。
2045
2046**起始版本:** 18
2047
2048**参数:**
2049
2050| 名称 | 描述 |
2051| -------- | -------- |
2052| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
2053| sql | 表示要执行的SQL语句。 |
2054| args | 表示指向[OH_Data_Values](#oh_data_values)的指针。 |
2055
2056**返回:**
2057
2058如果执行成功,则返回指向[OH_Cursor](_o_h___cursor.md)实例的指针。如果数据库已关闭或数据库没有响应,则返回空。
2059
2060
2061### OH_RdbTrans_Rollback()
2062
2063```
2064int OH_RdbTrans_Rollback (OH_Rdb_Transaction *trans)
2065```
2066
2067**描述**
2068
2069回滚事务。
2070
2071**起始版本:** 18
2072
2073**参数:**
2074
2075| 名称 | 描述 |
2076| -------- | -------- |
2077| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
2078
2079**返回:**
2080
2081返回执行结果。
2082
2083返回RDB_OK表示成功。
2084
2085返回RDB_E_ERROR表示数据库常见错误。
2086
2087返回RDB_E_INVALID_ARGS表示无效参数。
2088
2089返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
2090
2091返回RDB_E_SQLITE_FULL表示SQLite错误码:数据库已满。
2092
2093返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
2094
2095返回RDB_E_SQLITE_PERM表示SQLite错误码:访问权限被拒绝。
2096
2097返回RDB_E_SQLITE_BUSY表示SQLite错误码:数据库文件被锁定。
2098
2099返回RDB_E_SQLITE_NOMEM表示SQLite错误码:数据库内存不足。
2100
2101返回RDB_E_SQLITE_READONLY表示SQLite错误码:尝试写入只读数据库。
2102
2103返回RDB_E_SQLITE_IOERR表示SQLite错误码:磁盘I/O错误。
2104
2105
2106### OH_RdbTrans_Update()
2107
2108```
2109int OH_RdbTrans_Update (OH_Rdb_Transaction *trans, const OH_VBucket *row, const OH_Predicates *predicates, int64_t *changes )
2110```
2111
2112**描述**
2113
2114根据指定的条件更新数据库中的数据。
2115
2116**起始版本:** 18
2117
2118**参数:**
2119
2120| 名称 | 描述 |
2121| -------- | -------- |
2122| trans | 表示指向[OH_Rdb_Transaction](#oh_rdb_transaction)实例的指针。 |
2123| row | 表示要更新到表中的数据行。 |
2124| predicates | 表示[OH_Predicates](_o_h___predicates.md)指定的更新条件。 |
2125| changes | 输出参数,表示更新成功的次数。 |
2126
2127**返回:**
2128
2129返回执行结果。
2130
2131返回RDB_OK表示成功。
2132
2133返回RDB_E_ERROR表示数据库常见错误。
2134
2135返回RDB_E_INVALID_ARGS表示无效参数。
2136
2137返回RDB_E_ALREADY_CLOSED表示数据库已经关闭。
2138
2139返回RDB_E_WAL_SIZE_OVER_LIMIT表示WAL日志文件大小超过默认值。
2140
2141返回RDB_E_SQLITE_FULL表示SQLite错误码:数据库已满。
2142
2143返回RDB_E_SQLITE_CORRUPT表示数据库损坏。
2144
2145返回RDB_E_SQLITE_PERM表示SQLite错误码:访问权限被拒绝。
2146
2147返回RDB_E_SQLITE_BUSY表示SQLite错误码:数据库文件被锁定。
2148
2149返回RDB_E_SQLITE_LOCKED表示SQLite错误码:数据库中的表被锁定。
2150
2151返回RDB_E_SQLITE_NOMEM表示SQLite错误码:数据库内存不足。
2152
2153返回RDB_E_SQLITE_READONLY表示SQLite错误码:尝试写入只读数据库。
2154
2155返回RDB_E_SQLITE_IOERR表示SQLite错误码:磁盘I/O错误。
2156
2157返回RDB_E_SQLITE_TOO_BIG表示SQLite错误码:TEXT或BLOB超出大小限制。
2158
2159返回RDB_E_SQLITE_MISMATCH表示SQLite错误码:数据类型不匹配。
2160
2161### OH_RdbTransOption_SetType()
2162
2163```
2164int OH_RdbTransOption_SetType (OH_RDB_TransOptions *opitons, OH_RDB_TransType type )
2165```
2166
2167**描述**
2168
2169设置关系型数据库事务类型。
2170
2171**起始版本:** 18
2172
2173**参数:**
2174
2175| 名称 | 描述 |
2176| -------- | -------- |
2177| opitons | 表示指向[OH_RDB_TransOptions](#oh_rdb_transoptions)实例的指针。 |
2178| type | 表示关系型数据库事务类型。 |
2179
2180**返回:**
2181
2182返回错误码。
2183
2184返回RDB_OK表示成功。
2185
2186返回RDB_E_INVALID_ARGS表示无效参数。
2187
2188
2189### OH_Value_Create()
2190
2191```
2192OH_Data_Value* OH_Value_Create (void )
2193```
2194
2195**描述**
2196
2197创建[OH_Data_Value](#oh_data_value)实例,用于储存单条键值对数据。
2198
2199**起始版本:** 18
2200
2201**返回:**
2202
2203执行成功时返回指向[OH_Data_Value](#oh_data_value)实例的指针,否则返回nullptr。使用完成后,必须通过[OH_Value_Destroy](#oh_value_destroy)接口释放内存。
2204
2205**参见:**
2206
2207[OH_Value_Destroy](#oh_value_destroy).
2208
2209
2210### OH_Value_Destroy()
2211
2212```
2213int OH_Value_Destroy (OH_Data_Value *value)
2214```
2215
2216**描述**
2217
2218销毁[OH_Data_Value](#oh_data_value)对象。
2219
2220**起始版本:** 18
2221
2222**参数:**
2223
2224| 名称 | 描述 |
2225| -------- | -------- |
2226| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2227
2228**返回:**
2229
2230返回错误码。
2231
2232返回RDB_OK表示成功。
2233
2234返回RDB_E_INVALID_ARGS表示无效参数。
2235
2236
2237### OH_Value_GetAsset()
2238
2239```
2240int OH_Value_GetAsset (OH_Data_Value *value, Data_Asset *val )
2241```
2242
2243**描述**
2244
2245获取ASSET类型数据。
2246
2247**起始版本:** 18
2248
2249**参数:**
2250
2251| 名称 | 描述 |
2252| -------- | -------- |
2253| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2254| val | 表示指向**Data_Asset**对象的指针。需要申请数据内存。此函数仅填充数据。否则执行失败。 |
2255
2256**返回:**
2257
2258返回错误码。
2259
2260返回RDB_OK表示成功。
2261
2262返回RDB_E_INVALID_ARGS表示无效参数。
2263
2264返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2265
2266返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2267
2268### OH_Value_GetAssets()
2269
2270```
2271int OH_Value_GetAssets (OH_Data_Value *value, Data_Asset **val, size_t inLen, size_t *outLen )
2272```
2273
2274**描述**
2275
2276获取ASSETS类型数据。
2277
2278**起始版本:** 18
2279
2280**参数:**
2281
2282| 名称 | 描述 |
2283| -------- | -------- |
2284| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2285| val | 表示指向**Data_Asset**对象的指针。需要申请数据内存。此函数仅填充数据。否则执行失败。 |
2286| inLen | 表示val的大小。可以通过[OH_Values_GetAssetsCount](#oh_values_getassetscount)获取。 |
2287| outLen | 一个输出参数,表示实际获取的数据大小。 |
2288
2289**返回:**
2290
2291返回错误码。
2292
2293返回RDB_OK表示成功。
2294
2295返回RDB_E_INVALID_ARGS表示无效参数。
2296
2297返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2298
2299返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2300
2301**参见:**
2302
2303[OH_Value_GetAssetsCount](#oh_value_getassetscount).
2304
2305
2306### OH_Value_GetAssetsCount()
2307
2308```
2309int OH_Value_GetAssetsCount (OH_Data_Value *value, size_t *length )
2310```
2311
2312**描述**
2313
2314获取ASSETS类型数据的大小。
2315
2316**起始版本:** 18
2317
2318**参数:**
2319
2320| 名称 | 描述 |
2321| -------- | -------- |
2322| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2323| length | 一个输出参数,表示ASSETS类型数据的大小。 |
2324
2325**返回:**
2326
2327返回错误码。
2328
2329返回RDB_OK表示成功。
2330
2331返回RDB_E_INVALID_ARGS表示无效参数。
2332
2333返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2334
2335返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2336
2337
2338### OH_Value_GetBlob()
2339
2340```
2341int OH_Value_GetBlob (OH_Data_Value *value, const uint8_t **val, size_t *length )
2342```
2343
2344**描述**
2345
2346获取BLOB类型数据。
2347
2348**起始版本:** 18
2349
2350**参数:**
2351
2352| 名称 | 描述 |
2353| -------- | -------- |
2354| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2355| val | 一个输出参数,表示指向BLOB类型数据的指针。无需申请内存和释放内存。val的生命周期遵循value中index的值。 |
2356| length | 表示BLOB类型数组的大小。 |
2357
2358**返回:**
2359
2360返回错误码。
2361
2362返回RDB_OK表示成功。
2363
2364返回RDB_E_INVALID_ARGS表示无效参数。
2365
2366返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2367
2368返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2369
2370
2371### OH_Value_GetFloatVector()
2372
2373```
2374int OH_Value_GetFloatVector (OH_Data_Value *value, float *val, size_t inLen, size_t *outLen )
2375```
2376
2377**描述**
2378
2379获取float数组类型数据。
2380
2381**起始版本:** 18
2382
2383**参数:**
2384
2385| 名称 | 描述 |
2386| -------- | -------- |
2387| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2388| val | 表示指向float数组的指针。需要申请数据内存。此函数仅填充数据。否则执行失败。 |
2389| inLen | 表示val的大小。可以通过[OH_Values_GetFloatVectorCount](#oh_values_getfloatvectorcount)获取。 |
2390| outLen | 一个输出参数,表示实际获取的数据大小。 |
2391
2392**返回:**
2393
2394返回错误码。
2395
2396返回RDB_OK表示成功。
2397
2398返回RDB_E_INVALID_ARGS表示无效参数。
2399
2400返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2401
2402返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2403
2404**参见:**
2405
2406[OH_Value_GetFloatVectorCount](#oh_value_getfloatvectorcount).
2407
2408
2409### OH_Value_GetFloatVectorCount()
2410
2411```
2412int OH_Value_GetFloatVectorCount (OH_Data_Value *value, size_t *length )
2413```
2414
2415**描述**
2416
2417获取float数组类型数据的大小。
2418
2419**起始版本:** 18
2420
2421**参数:**
2422
2423| 名称 | 描述 |
2424| -------- | -------- |
2425| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2426| length | 一个输出参数,表示float数组类型数据的大小。 |
2427
2428**返回:**
2429
2430返回错误码。
2431
2432返回RDB_OK表示成功。
2433
2434返回RDB_E_INVALID_ARGS返回。
2435
2436返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2437
2438返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2439
2440
2441### OH_Value_GetInt()
2442
2443```
2444int OH_Value_GetInt (OH_Data_Value *value, int64_t *val )
2445```
2446
2447**描述**
2448
2449获取整型数据。
2450
2451**起始版本:** 18
2452
2453**参数:**
2454
2455| 名称 | 描述 |
2456| -------- | -------- |
2457| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2458| val | 一个输出参数,表示指向整型数据的指针。 |
2459
2460**返回:**
2461
2462返回错误码。
2463
2464返回RDB_OK表示成功。
2465
2466返回RDB_E_INVALID_ARGS表示无效参数。
2467
2468返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2469
2470返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2471
2472
2473### OH_Value_GetReal()
2474
2475```
2476int OH_Value_GetReal (OH_Data_Value *value, double *val )
2477```
2478
2479**描述**
2480
2481获取REAL类型数据。
2482
2483**起始版本:** 18
2484
2485**参数:**
2486
2487| 名称 | 描述 |
2488| -------- | -------- |
2489| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2490| val | 一个输出参数,表示指向REAL类型数据的指针。 |
2491
2492**返回:**
2493
2494返回错误码。
2495
2496返回RDB_OK表示成功。
2497
2498返回RDB_E_INVALID_ARGS表示无效参数。
2499
2500返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2501
2502返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2503
2504
2505### OH_Value_GetText()
2506
2507```
2508int OH_Value_GetText (OH_Data_Value *value, const char **val )
2509```
2510
2511**描述**
2512
2513获取字符串类型数据。
2514
2515**起始版本:** 18
2516
2517**参数:**
2518
2519| 名称 | 描述 |
2520| -------- | -------- |
2521| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2522| val | 一个输出参数,表示指向字符串类型数据的指针。无需申请内存和释放内存。val的生命周期遵循value中index的值。 |
2523
2524**返回:**
2525
2526返回错误码。
2527
2528返回RDB_OK表示成功。
2529
2530返回RDB_E_INVALID_ARGS表示无效参数。
2531
2532返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2533
2534返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2535
2536### OH_Value_GetType()
2537
2538```
2539int OH_Value_GetType (OH_Data_Value *value, OH_ColumnType *type )
2540```
2541
2542**描述**
2543
2544获取数据类型。
2545
2546**起始版本:** 18
2547
2548**参数:**
2549
2550| 名称 | 描述 |
2551| -------- | -------- |
2552| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2553| type | 一个输出参数,表示数据类型。 |
2554
2555**返回:**
2556
2557返回错误码。
2558
2559返回RDB_OK表示成功。
2560
2561返回RDB_E_INVALID_ARGS表示无效参数。
2562
2563
2564### OH_Value_GetUnlimitedInt()
2565
2566```
2567int OH_Value_GetUnlimitedInt (OH_Data_Value *value, int *sign, uint64_t *trueForm, size_t inLen, size_t *outLen )
2568```
2569
2570**描述**
2571
2572获取任意长度的整型数据。
2573
2574**起始版本:** 18
2575
2576**参数:**
2577
2578| 名称 | 描述 |
2579| -------- | -------- |
2580| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2581| sign | 一个输出参数,表示正负数,0表示正整数,1表示负整数。 |
2582| trueForm | 表示指向整型数组的指针。需要申请数据内存。此函数仅填充数据。否则执行失败。 |
2583| inLen | 表示trueForm的大小。可以通过[OH_Values_GetUnlimitedIntBand](#oh_values_getunlimitedintband)获取。 |
2584| outLen | 一个输出参数,表示实际获取的数据大小。 |
2585
2586**返回:**
2587
2588返回错误码。
2589
2590返回RDB_OK表示成功。
2591
2592返回RDB_E_INVALID_ARGS表示无效参数。
2593
2594返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2595
2596返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2597
2598**参见:**
2599
2600[OH_Value_GetUnlimitedIntBand](#oh_value_getunlimitedintband).
2601
2602
2603### OH_Value_GetUnlimitedIntBand()
2604
2605```
2606int OH_Value_GetUnlimitedIntBand (OH_Data_Value *value, size_t *length )
2607```
2608
2609**描述**
2610
2611获取任意长度的整型数据的大小。
2612
2613**起始版本:** 18
2614
2615**参数:**
2616
2617| 名称 | 描述 |
2618| -------- | -------- |
2619| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2620| length | 一个输出参数,表示整型数组的大小。 |
2621
2622**返回:**
2623
2624返回错误码。
2625
2626返回RDB_OK表示成功。
2627
2628返回RDB_E_INVALID_ARGS表示无效参数。
2629
2630返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
2631
2632返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
2633
2634### OH_Value_IsNull()
2635
2636```
2637int OH_Value_IsNull (OH_Data_Value *value, bool *val )
2638```
2639
2640**描述**
2641
2642检查数据是否为空。
2643
2644**起始版本:** 18
2645
2646**参数:**
2647
2648| 名称 | 描述 |
2649| -------- | -------- |
2650| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2651| val | 一个输出参数,ture表示空,false表示不为空。 |
2652
2653**返回:**
2654
2655返回错误码。
2656
2657返回RDB_OK表示成功。
2658
2659返回RDB_E_INVALID_ARGS表示无效参数。
2660
2661
2662### OH_Value_PutAsset()
2663
2664```
2665int OH_Value_PutAsset (OH_Data_Value *value, const Data_Asset *val )
2666```
2667
2668**描述**
2669
2670添加ASSET类型数据。
2671
2672**起始版本:** 18
2673
2674**参数:**
2675
2676| 名称 | 描述 |
2677| -------- | -------- |
2678| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2679| val | 表示指向**Data_Asset**对象的指针。 |
2680
2681**返回:**
2682
2683返回错误码。
2684
2685返回RDB_OK表示成功。
2686
2687返回RDB_E_INVALID_ARGS表示无效参数。
2688
2689
2690### OH_Value_PutAssets()
2691
2692```
2693int OH_Value_PutAssets (OH_Data_Value *value, const Data_Asset * const * val, size_t length )
2694```
2695
2696**描述**
2697
2698添加ASSETS类型数据。
2699
2700**起始版本:** 18
2701
2702**参数:**
2703
2704| 名称 | 描述 |
2705| -------- | -------- |
2706| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2707| val | 表示指向**Data_Asset**对象的指针。 |
2708| length | 表示传入的**Data_Asset**对象数组元素的个数。 |
2709
2710**返回:**
2711
2712返回错误码。
2713
2714返回RDB_OK表示成功。
2715
2716返回RDB_E_INVALID_ARGS表示无效参数。
2717
2718
2719### OH_Value_PutBlob()
2720
2721```
2722int OH_Value_PutBlob (OH_Data_Value *value, const unsigned char *val, size_t length )
2723```
2724
2725**描述**
2726
2727添加BLOB类型数据。
2728
2729**起始版本:** 18
2730
2731**参数:**
2732
2733| 名称 | 描述 |
2734| -------- | -------- |
2735| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2736| val | 表示BLOB类型数据。 |
2737| length | 表示BLOB类型数据的大小。 |
2738
2739**返回:**
2740
2741返回错误码。
2742
2743返回RDB_OK表示成功。
2744
2745返回RDB_E_INVALID_ARGS表示无效参数。
2746
2747
2748### OH_Value_PutFloatVector()
2749
2750```
2751int OH_Value_PutFloatVector (OH_Data_Value *value, const float *val, size_t length )
2752```
2753
2754**描述**
2755
2756添加float数组类型数据。
2757
2758**起始版本:** 18
2759
2760**参数:**
2761
2762| 名称 | 描述 |
2763| -------- | -------- |
2764| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2765| val | 表示指向float数组对象的指针。 |
2766| length | 表示float数组的大小。 |
2767
2768**返回:**
2769
2770返回错误码。
2771
2772返回RDB_OK表示成功。
2773
2774返回RDB_E_INVALID_ARGS表示无效参数。
2775
2776### OH_Value_PutInt()
2777
2778```
2779int OH_Value_PutInt (OH_Data_Value *value, int64_t val )
2780```
2781
2782**描述**
2783
2784添加整型数据。
2785
2786**起始版本:** 18
2787
2788**参数:**
2789
2790| 名称 | 描述 |
2791| -------- | -------- |
2792| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2793| val | 表示整型数据。 |
2794
2795**返回:**
2796
2797返回错误码。
2798
2799返回RDB_OK表示成功。
2800
2801返回RDB_E_INVALID_ARGS表示无效参数。
2802
2803
2804### OH_Value_PutNull()
2805
2806```
2807int OH_Value_PutNull (OH_Data_Value *value)
2808```
2809
2810**描述**
2811
2812添加空数据。
2813
2814**起始版本:** 18
2815
2816**参数:**
2817
2818| 名称 | 描述 |
2819| -------- | -------- |
2820| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2821
2822**返回:**
2823
2824返回错误码。
2825
2826返回RDB_OK表示成功。
2827
2828返回RDB_E_INVALID_ARGS表示无效参数。
2829
2830
2831### OH_Value_PutReal()
2832
2833```
2834int OH_Value_PutReal (OH_Data_Value *value, double val )
2835```
2836
2837**描述**
2838
2839添加REAL类型数据。
2840
2841**起始版本:** 18
2842
2843**参数:**
2844
2845| 名称 | 描述 |
2846| -------- | -------- |
2847| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2848| val | 表示REAL类型数据。 |
2849
2850**返回:**
2851
2852返回错误码。
2853
2854返回RDB_OK表示成功。
2855
2856返回RDB_E_INVALID_ARGS表示无效参数。
2857
2858
2859### OH_Value_PutText()
2860
2861```
2862int OH_Value_PutText (OH_Data_Value *value, const char *val )
2863```
2864
2865**描述**
2866
2867添加字符串类型数据。
2868
2869**起始版本:** 18
2870
2871**参数:**
2872
2873| 名称 | 描述 |
2874| -------- | -------- |
2875| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2876| val | 表示字符串类型数据。 |
2877
2878**返回:**
2879
2880返回错误码。
2881
2882返回RDB_OK表示成功。
2883
2884返回RDB_E_INVALID_ARGS表示无效参数。
2885
2886
2887### OH_Value_PutUnlimitedInt()
2888
2889```
2890int OH_Value_PutUnlimitedInt (OH_Data_Value *value, int sign, const uint64_t *trueForm, size_t length )
2891```
2892
2893**描述**
2894
2895添加任意长度的整型数组数据。
2896
2897**起始版本:** 18
2898
2899**参数:**
2900
2901| 名称 | 描述 |
2902| -------- | -------- |
2903| value | 表示指向[OH_Data_Value](#oh_data_value)实例的指针。 |
2904| sign | 表示正负数,0表示正整数,1表示负整数。 |
2905| trueForm | 表示指向整型数组的指针。 |
2906| length | 表示整型数组的大小。 |
2907
2908**返回:**
2909
2910返回错误码。
2911
2912返回RDB_OK表示成功。
2913
2914返回RDB_E_INVALID_ARGS表示无效参数。
2915
2916### OH_Values_Count()
2917
2918```
2919int OH_Values_Count (OH_Data_Values *values, size_t *count )
2920```
2921
2922**描述**
2923
2924获取数据个数。
2925
2926**起始版本:** 18
2927
2928**参数:**
2929
2930| 名称 | 描述 |
2931| -------- | -------- |
2932| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
2933| count | 一个输出参数,表示values中数据的个数。 |
2934
2935**返回:**
2936
2937返回错误码。
2938
2939返回RDB_OK表示成功。
2940
2941返回RDB_E_INVALID_ARGS表示无效参数。
2942
2943
2944### OH_Values_Create()
2945
2946```
2947OH_Data_Values* OH_Values_Create (void )
2948```
2949
2950**描述**
2951
2952创建[OH_Data_Values](#oh_data_values)实例,用于储存多条键值对数据。
2953
2954**起始版本:** 18
2955
2956**返回:**
2957
2958执行成功时返回指向[OH_Data_Values](#oh_data_values)实例的指针,否则返回nullptr。使用完成后,必须通过[OH_Values_Destroy](#oh_values_destroy)接口释放内存。
2959
2960**参见:**
2961
2962[OH_Values_Destroy](#oh_values_destroy).
2963
2964
2965### OH_Values_Destroy()
2966
2967```
2968int OH_Values_Destroy (OH_Data_Values *values)
2969```
2970
2971**描述**
2972
2973销毁[OH_Data_Values](#oh_data_values)对象。
2974
2975**起始版本:** 18
2976
2977**参数:**
2978
2979| 名称 | 描述 |
2980| -------- | -------- |
2981| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
2982
2983**返回:**
2984
2985返回错误码。
2986
2987返回RDB_OK表示成功。
2988
2989返回RDB_E_INVALID_ARGS表示无效参数。
2990
2991
2992### OH_Values_Get()
2993
2994```
2995int OH_Values_Get (OH_Data_Values *values, int index, OH_Data_Value **val )
2996```
2997
2998**描述**
2999
3000获取OH_Data_Value类型数据。
3001
3002**起始版本:** 18
3003
3004**参数:**
3005
3006| 名称 | 描述 |
3007| -------- | -------- |
3008| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3009| index | 表示values中目标数据的从零开始的索引。 |
3010| val | 一个输出参数,表示指向[OH_Data_Value](#oh_data_value)实例的指针。无需申请内存和释放内存。 |
3011
3012**返回:**
3013
3014返回错误码。
3015
3016返回RDB_OK表示成功。
3017
3018返回RDB_E_INVALID_ARGS表示无效参数。
3019
3020### OH_Values_GetAsset()
3021
3022```
3023int OH_Values_GetAsset (OH_Data_Values *values, int index, Data_Asset *val )
3024```
3025
3026**描述**
3027
3028获取ASSET类型数据。
3029
3030**起始版本:** 18
3031
3032**参数:**
3033
3034| 名称 | 描述 |
3035| -------- | -------- |
3036| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3037| index | 表示values中目标数据的从零开始的索引。 |
3038| val | 表示指向**Data_Asset**对象的指针。需要申请数据内存。此函数仅填充数据。否则执行失败。 |
3039
3040**返回:**
3041
3042返回错误码。
3043
3044返回RDB_OK表示成功。
3045
3046返回RDB_E_INVALID_ARGS表示无效参数。
3047
3048返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3049
3050返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3051
3052
3053### OH_Values_GetAssets()
3054
3055```
3056int OH_Values_GetAssets (OH_Data_Values *values, int index, Data_Asset **val, size_t inLen, size_t *outLen )
3057```
3058
3059**描述**
3060
3061获取ASSETS类型数据。
3062
3063**起始版本:** 18
3064
3065**参数:**
3066
3067| 名称 | 描述 |
3068| -------- | -------- |
3069| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3070| index | 表示values中目标数据的从零开始的索引。 |
3071| val | 表示指向**Data_Asset**对象的指针。使用时需要申请数据内存。此函数仅填充数据。否则执行失败。 |
3072| inLen | 表示val的大小。可以通过[OH_Values_GetAssetsCount](#oh_values_getassetscount)获取。 |
3073| outLen | 一个输出参数,表示实际获取的数据大小。 |
3074
3075**返回:**
3076
3077返回错误码。
3078
3079返回RDB_OK表示成功。
3080
3081返回RDB_E_INVALID_ARGS表示无效参数。
3082
3083返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3084
3085返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3086
3087**参见:**
3088
3089[OH_Values_GetAssetsCount](#oh_values_getassetscount).
3090
3091
3092### OH_Values_GetAssetsCount()
3093
3094```
3095int OH_Values_GetAssetsCount (OH_Data_Values *values, int index, size_t *length )
3096```
3097
3098**描述**
3099
3100获取ASSETS类型数据的大小。
3101
3102**起始版本:** 18
3103
3104**参数:**
3105
3106| 名称 | 描述 |
3107| -------- | -------- |
3108| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3109| index | 表示values中目标数据的从零开始的索引。 |
3110| length | 一个输出参数,表示ASSETS类型数据的大小。 |
3111
3112**返回:**
3113
3114返回错误码。
3115
3116返回RDB_OK表示成功。
3117
3118返回RDB_E_INVALID_ARGS表示无效参数。
3119
3120返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3121
3122返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3123
3124
3125### OH_Values_GetBlob()
3126
3127```
3128int OH_Values_GetBlob (OH_Data_Values *values, int index, const uint8_t **val, size_t *length )
3129```
3130
3131**描述**
3132
3133获取BLOB类型数据。
3134
3135**起始版本:** 18
3136
3137**参数:**
3138
3139| 名称 | 描述 |
3140| -------- | -------- |
3141| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3142| index | 表示values中目标数据的从零开始的索引。 |
3143| val | 一个输出参数,表示指向BLOB类型数据的指针。无需申请内存和释放内存。val的生命周期遵循values中index的值。 |
3144| length | 表示BLOB类型数组的大小。 |
3145
3146**返回:**
3147
3148返回错误码。
3149
3150返回RDB_OK表示成功。
3151
3152返回RDB_E_INVALID_ARGS表示无效参数。
3153
3154返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3155
3156返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3157
3158### OH_Values_GetFloatVector()
3159
3160```
3161int OH_Values_GetFloatVector (OH_Data_Values *values, int index, float *val, size_t inLen, size_t *outLen )
3162```
3163
3164**描述**
3165
3166获取float数组类型数据。
3167
3168**起始版本:** 18
3169
3170**参数:**
3171
3172| 名称 | 描述 |
3173| -------- | -------- |
3174| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3175| index | 表示values中目标数据的从零开始的索引。 |
3176| val | 表示指向float数组的指针。需要申请数据内存。此函数仅填充数据。否则执行失败。 |
3177| inLen | 表示val的大小。可以通过[OH_Values_GetFloatVectorCount](#oh_values_getfloatvectorcount)获取。 |
3178| outLen | 一个输出参数,表示实际获取的数据大小。 |
3179
3180**返回:**
3181
3182返回错误码。
3183
3184返回RDB_OK表示成功。
3185
3186返回RDB_E_INVALID_ARGS表示无效参数。
3187
3188返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3189
3190返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3191
3192**参见:**
3193
3194[OH_Values_GetFloatVectorCount](#oh_values_getfloatvectorcount).
3195
3196
3197### OH_Values_GetFloatVectorCount()
3198
3199```
3200int OH_Values_GetFloatVectorCount (OH_Data_Values *values, int index, size_t *length )
3201```
3202
3203**描述**
3204
3205获取float数组类型数据的大小。
3206
3207**起始版本:** 18
3208
3209**参数:**
3210
3211| 名称 | 描述 |
3212| -------- | -------- |
3213| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3214| index | 表示values中目标数据的从零开始的索引。 |
3215| length | 一个输出参数,表示float数组类型数据的大小。 |
3216
3217**返回:**
3218
3219返回错误码。
3220
3221返回RDB_OK表示成功。
3222
3223返回RDB_E_INVALID_ARGS表示无效参数。
3224
3225返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3226
3227返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3228
3229
3230### OH_Values_GetInt()
3231
3232```
3233int OH_Values_GetInt (OH_Data_Values *values, int index, int64_t *val )
3234```
3235
3236**描述**
3237
3238获取整型数据。
3239
3240**起始版本:** 18
3241
3242**参数:**
3243
3244| 名称 | 描述 |
3245| -------- | -------- |
3246| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3247| index | 表示values中目标数据的从零开始的索引。 |
3248| val | 一个输出参数,表示指向整型数据的指针。 |
3249
3250**返回:**
3251
3252返回错误码。
3253
3254返回RDB_OK表示成功。
3255
3256返回RDB_E_INVALID_ARGS表示无效参数。
3257
3258返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3259
3260返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3261
3262### OH_Values_GetReal()
3263
3264```
3265int OH_Values_GetReal (OH_Data_Values *values, int index, double *val )
3266```
3267
3268**描述**
3269
3270获取REAL类型数据。
3271
3272**起始版本:** 18
3273
3274**参数:**
3275
3276| 名称 | 描述 |
3277| -------- | -------- |
3278| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3279| index | 表示values中目标数据的从零开始的索引。 |
3280| val | 一个输出参数,表示指向REAL类型数据的指针。 |
3281
3282**返回:**
3283
3284返回错误码。
3285
3286返回RDB_OK表示成功。
3287
3288返回RDB_E_INVALID_ARGS表示无效参数。
3289
3290返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3291
3292返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3293
3294
3295### OH_Values_GetText()
3296
3297```
3298int OH_Values_GetText (OH_Data_Values *values, int index, const char **val )
3299```
3300
3301**描述**
3302
3303获取字符串类型数据。
3304
3305**起始版本:** 18
3306
3307**参数:**
3308
3309| 名称 | 描述 |
3310| -------- | -------- |
3311| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3312| index | 表示values中目标数据的从零开始的索引。 |
3313| val | 一个输出参数,表示指向字符串类型数据的指针。无需申请内存和释放内存。val的生命周期遵循values中index的值。 |
3314
3315**返回:**
3316
3317返回错误码。
3318
3319返回RDB_OK表示成功。
3320
3321返回RDB_E_INVALID_ARGS表示无效参数。
3322
3323返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3324
3325返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3326
3327
3328### OH_Values_GetType()
3329
3330```
3331int OH_Values_GetType (OH_Data_Values *values, int index, OH_ColumnType *type )
3332```
3333
3334**描述**
3335
3336获取数据类型。
3337
3338**起始版本:** 18
3339
3340**参数:**
3341
3342| 名称 | 描述 |
3343| -------- | -------- |
3344| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3345| index | 表示values中目标数据的从零开始的索引。 |
3346| type | 一个输出参数,表示数据类型。 |
3347
3348**返回:**
3349
3350返回错误码。
3351
3352返回RDB_OK表示成功。
3353
3354返回RDB_E_INVALID_ARGS表示无效参数。
3355
3356
3357### OH_Values_GetUnlimitedInt()
3358
3359```
3360int OH_Values_GetUnlimitedInt (OH_Data_Values *values, int index, int *sign, uint64_t *trueForm, size_t inLen, size_t *outLen )
3361```
3362
3363**描述**
3364
3365获取任意长度的整型数据。
3366
3367**起始版本:** 18
3368
3369**参数:**
3370
3371| 名称 | 描述 |
3372| -------- | -------- |
3373| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3374| index | 表示values中目标数据的从零开始的索引。 |
3375| sign | 一个输出参数,表示正负数,0表示正整数,1表示负整数。 |
3376| trueForm | 表示指向整型数组的指针。需要申请数据内存。此函数仅填充数据。否则执行失败。 |
3377| inLen | 表示trueForm的大小。可以通过[OH_Values_GetUnlimitedIntBand](#oh_values_getunlimitedintband)获取。 |
3378| outLen | 一个输出参数,表示实际获取的数据大小。 |
3379
3380**返回:**
3381
3382返回错误码。
3383
3384返回RDB_OK表示成功。
3385
3386返回RDB_E_INVALID_ARGS表示无效参数。
3387
3388返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3389
3390返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3391
3392**参见:**
3393
3394[OH_Values_GetUnlimitedIntBand](#oh_values_getunlimitedintband).
3395
3396
3397### OH_Values_GetUnlimitedIntBand()
3398
3399```
3400int OH_Values_GetUnlimitedIntBand (OH_Data_Values *values, int index, size_t *length )
3401```
3402
3403**描述**
3404
3405获取任意长度的整型数据的大小。
3406
3407**起始版本:** 18
3408
3409**参数:**
3410
3411| 名称 | 描述 |
3412| -------- | -------- |
3413| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3414| index | 表示values中目标数据的从零开始的索引。 |
3415| length | 一个输出参数,表示整型数组的大小。 |
3416
3417**返回:**
3418
3419返回错误码。
3420
3421返回RDB_OK表示成功。
3422
3423返回RDB_E_INVALID_ARGS表示无效参数。
3424
3425返回RDB_E_DATA_TYPE_NULL表示存储数据为空。
3426
3427返回RDB_E_TYPE_MISMATCH表示数据类型不匹配。
3428
3429
3430### OH_Values_IsNull()
3431
3432```
3433int OH_Values_IsNull (OH_Data_Values *values, int index, bool *val )
3434```
3435
3436**描述**
3437
3438检查数据是否为空。
3439
3440**起始版本:** 18
3441
3442**参数:**
3443
3444| 名称 | 描述 |
3445| -------- | -------- |
3446| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3447| index | 表示values中目标数据的从零开始的索引。 |
3448| val | 一个输出参数,ture表示空,false表示不为空。 |
3449
3450**返回:**
3451
3452返回错误码。
3453
3454返回RDB_OK表示成功。
3455
3456返回RDB_E_INVALID_ARGS表示无效参数。
3457
3458### OH_Values_Put()
3459
3460```
3461int OH_Values_Put (OH_Data_Values *values, const OH_Data_Value *val )
3462```
3463
3464**描述**
3465
3466添加OH_Data_Value类型数据给OH_Data_Values对象。
3467
3468**起始版本:** 18
3469
3470**参数:**
3471
3472| 名称 | 描述 |
3473| -------- | -------- |
3474| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3475| val | 表示指向[OH_Data_Value](#oh_data_value)对象的指针。 |
3476
3477**返回:**
3478
3479返回错误码。
3480
3481返回RDB_OK表示成功。
3482
3483返回RDB_E_INVALID_ARGS表示无效参数。
3484
3485
3486### OH_Values_PutAsset()
3487
3488```
3489int OH_Values_PutAsset (OH_Data_Values *values, const Data_Asset *val )
3490```
3491
3492**描述**
3493
3494添加ASSET类型数据给OH_Data_Values对象。
3495
3496**起始版本:** 18
3497
3498**参数:**
3499
3500| 名称 | 描述 |
3501| -------- | -------- |
3502| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3503| val | 表示指向**Data_Asset**对象的指针。 |
3504
3505**返回:**
3506
3507返回错误码。
3508
3509返回RDB_OK表示成功。
3510
3511返回RDB_E_INVALID_ARGS表示无效参数。
3512
3513
3514### OH_Values_PutAssets()
3515
3516```
3517int OH_Values_PutAssets (OH_Data_Values *values, const Data_Asset * const * val, size_t length )
3518```
3519
3520**描述**
3521
3522添加ASSETS类型数据给OH_Data_Values对象。
3523
3524**起始版本:** 18
3525
3526**参数:**
3527
3528| 名称 | 描述 |
3529| -------- | -------- |
3530| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3531| val | 表示指向**Data_Asset**对象的指针。 |
3532| length | 表示传入的**Data_Asset**对象数组元素的个数。 |
3533
3534**返回:**
3535
3536返回错误码。
3537
3538返回RDB_OK表示成功。
3539
3540返回RDB_E_INVALID_ARGS表示无效参数。
3541
3542
3543### OH_Values_PutBlob()
3544
3545```
3546int OH_Values_PutBlob (OH_Data_Values *values, const unsigned char *val, size_t length )
3547```
3548
3549**描述**
3550
3551添加BLOB类型数据给OH_Data_Values对象。
3552
3553**起始版本:** 18
3554
3555**参数:**
3556
3557| 名称 | 描述 |
3558| -------- | -------- |
3559| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3560| val | 表示BLOB类型数据。 |
3561| length | 表示BLOB类型数据的大小。 |
3562
3563**返回:**
3564
3565返回错误码。
3566
3567返回RDB_OK表示成功。
3568
3569返回RDB_E_INVALID_ARGS表示无效参数。
3570
3571
3572### OH_Values_PutFloatVector()
3573
3574```
3575int OH_Values_PutFloatVector (OH_Data_Values *values, const float *val, size_t length )
3576```
3577
3578**描述**
3579
3580添加float数组类型数据给OH_Data_Values对象。
3581
3582**起始版本:** 18
3583
3584**参数:**
3585
3586| 名称 | 描述 |
3587| -------- | -------- |
3588| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3589| val | 表示指向float数组对象的指针。 |
3590| length | 表示float数组的长度。 |
3591
3592**返回:**
3593
3594返回错误码。
3595
3596返回RDB_OK表示成功。
3597
3598返回RDB_E_INVALID_ARGS表示无效参数。
3599
3600
3601### OH_Values_PutInt()
3602
3603```
3604int OH_Values_PutInt (OH_Data_Values *values, int64_t val )
3605```
3606
3607**描述**
3608
3609添加整型数据给OH_Data_Values对象。
3610
3611**起始版本:** 18
3612
3613**参数:**
3614
3615| 名称 | 描述 |
3616| -------- | -------- |
3617| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3618| val | 表示整型数据。 |
3619
3620**返回:**
3621
3622返回错误码。
3623
3624返回RDB_OK表示成功。
3625
3626返回RDB_E_INVALID_ARGS表示无效参数。
3627
3628
3629### OH_Values_PutNull()
3630
3631```
3632int OH_Values_PutNull (OH_Data_Values *values)
3633```
3634
3635**描述**
3636
3637添加空数据给OH_Data_Values对象。
3638
3639**起始版本:** 18
3640
3641**参数:**
3642
3643| 名称 | 描述 |
3644| -------- | -------- |
3645| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3646
3647**返回:**
3648
3649返回错误码。
3650
3651返回RDB_OK表示成功。
3652
3653返回RDB_E_INVALID_ARGS表示无效参数。
3654
3655
3656### OH_Values_PutReal()
3657
3658```
3659int OH_Values_PutReal (OH_Data_Values *values, double val )
3660```
3661
3662**描述**
3663
3664添加REAL类型数据给OH_Data_Values对象。
3665
3666**起始版本:** 18
3667
3668**参数:**
3669
3670| 名称 | 描述 |
3671| -------- | -------- |
3672| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3673| val | 表示REAL类型数据。 |
3674
3675**返回:**
3676
3677返回错误码。
3678
3679返回RDB_OK表示成功。
3680
3681返回RDB_E_INVALID_ARGS表示无效参数。
3682
3683
3684### OH_Values_PutText()
3685
3686```
3687int OH_Values_PutText (OH_Data_Values *values, const char *val )
3688```
3689
3690**描述**
3691
3692添加字符串类型数据给OH_Data_Values对象。
3693
3694**起始版本:** 18
3695
3696**参数:**
3697
3698| 名称 | 描述 |
3699| -------- | -------- |
3700| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3701| val | 表示字符串类型数据。 |
3702
3703**返回:**
3704
3705返回错误码。
3706
3707返回RDB_OK表示成功。
3708
3709返回RDB_E_INVALID_ARGS表示无效参数。
3710
3711
3712### OH_Values_PutUnlimitedInt()
3713
3714```
3715int OH_Values_PutUnlimitedInt (OH_Data_Values *values, int sign, const uint64_t *trueForm, size_t length )
3716```
3717
3718**描述**
3719
3720添加任意长度的整型数组数据给OH_Data_Values对象。
3721
3722**起始版本:** 18
3723
3724**参数:**
3725
3726| 名称 | 描述 |
3727| -------- | -------- |
3728| values | 表示指向[OH_Data_Values](#oh_data_values)实例的指针。 |
3729| sign | 表示正负数,0表示正整数,1表示负整数。 |
3730| trueForm | 表示指向整型数组的指针。 |
3731| length | 表示整型数组的大小。 |
3732
3733**返回:**
3734
3735返回错误码。
3736
3737返回RDB_OK表示成功。
3738
3739返回RDB_E_INVALID_ARGS表示无效参数。
3740
3741### OH_VBucket_PutFloatVector()
3742
3743```
3744int OH_VBucket_PutFloatVector (OH_VBucket *bucket, const char *field, const float *vec, size_t len )
3745```
3746
3747**描述**
3748
3749将float数组类型对象放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。
3750
3751**起始版本:** 18
3752
3753**参数:**
3754
3755| 名称 | 描述 |
3756| -------- | -------- |
3757| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
3758| field | 数据库表中的列名。 |
3759| vec | 表示指向float数组的指针。 |
3760| len | 表示float数组的大小。 |
3761
3762**返回:**
3763
3764返回操作是否成功,出错时返回对应的错误码。
3765
3766RDB_OK 表示成功。
3767
3768RDB_E_INVALID_ARGS 表示无效参数。
3769
3770**参见:**
3771
3772[OH_VBucket](_o_h___v_bucket.md).
3773
3774
3775### OH_VBucket_PutUnlimitedInt()
3776
3777```
3778int OH_VBucket_PutUnlimitedInt (OH_VBucket *bucket, const char *field, int sign, const uint64_t *trueForm, size_t len )
3779```
3780
3781**描述**
3782
3783将任意长度的整数类型对象放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。
3784
3785**起始版本:** 18
3786
3787**参数:**
3788
3789| 名称 | 描述 |
3790| -------- | -------- |
3791| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
3792| field | 数据库表中的列名。 |
3793| sign | 表示整数类型对象是正数还是负数,0表示正数,1表示负数。 |
3794| trueForm | 表示指向整数类型数组的指针。 |
3795| len | 表示整数数组的大小。 |
3796
3797**返回:**
3798
3799返回操作是否成功,出错时返回对应的错误码。
3800
3801RDB_OK 表示成功。
3802
3803RDB_E_INVALID_ARGS 表示无效参数。
3804
3805**参见:**
3806
3807[OH_VBucket](_o_h___v_bucket.md).
3808
3809
3810### OH_VBuckets_Create()
3811
3812```
3813OH_Data_VBuckets* OH_VBuckets_Create (void)
3814```
3815
3816**描述**
3817
3818创建OH_Data_VBuckets实例。
3819
3820**起始版本:** 18
3821
3822**返回:**
3823
3824执行成功时返回指向[OH_Data_VBuckets](#oh_data_vbuckets)实例的指针,否则返回nullptr。使用完成后,必须通过[OH_VBuckets_Destroy](#oh_vbuckets_destroy)接口释放内存。
3825
3826**参见:**
3827
3828[OH_VBuckets_Destroy](#oh_vbuckets_destroy).
3829
3830
3831### OH_VBuckets_Destroy()
3832
3833```
3834int OH_VBuckets_Destroy (OH_Data_VBuckets *buckets)
3835```
3836
3837**描述**
3838
3839销毁OH_Data_VBuckets对象。
3840
3841**起始版本:** 18
3842
3843**参数:**
3844
3845| 名称 | 描述 |
3846| -------- | -------- |
3847| buckets | 表示指向[OH_Data_VBuckets](#oh_data_vbuckets)实例的指针。 |
3848
3849**返回:**
3850
3851返回错误码。
3852
3853返回RDB_OK表示成功。
3854
3855返回RDB_E_INVALID_ARGS表示无效参数。
3856
3857
3858### OH_VBuckets_PutRow()
3859
3860```
3861int OH_VBuckets_PutRow (OH_Data_VBuckets *buckets, const OH_VBucket *row )
3862```
3863
3864**描述**
3865
3866添加OH_VBucket类型数据。
3867
3868**起始版本:** 18
3869
3870**参数:**
3871
3872| 名称 | 描述 |
3873| -------- | -------- |
3874| buckets | 表示指向[OH_Data_VBuckets](#oh_data_vbuckets)实例的指针。 |
3875| row | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
3876
3877**返回:**
3878
3879返回错误码。
3880
3881返回RDB_OK表示成功。
3882
3883返回RDB_E_INVALID_ARGS表示无效参数。
3884
3885
3886### OH_VBuckets_PutRows()
3887
3888```
3889int OH_VBuckets_PutRows (OH_Data_VBuckets *buckets, const OH_Data_VBuckets *rows )
3890```
3891
3892**描述**
3893
3894添加OH_Data_VBuckets类型数据。
3895
3896**起始版本:** 18
3897
3898**参数:**
3899
3900| 名称 | 描述 |
3901| -------- | -------- |
3902| buckets | 表示指向[OH_Data_VBuckets](#oh_data_vbuckets)实例的指针。 |
3903| rows | 表示指向[OH_Data_VBuckets](#oh_data_vbuckets)实例的指针。 |
3904
3905**返回:**
3906
3907返回错误码。
3908
3909返回RDB_OK表示成功。
3910
3911返回RDB_E_INVALID_ARGS表示无效参数。
3912
3913
3914### OH_VBuckets_RowCount()
3915
3916```
3917int OH_VBuckets_RowCount (OH_Data_VBuckets *buckets, size_t *count )
3918```
3919
3920**描述**
3921
3922获取OH_Data_VBuckets中OH_VBucket的行数。
3923
3924**起始版本:** 18
3925
3926**参数:**
3927
3928| 名称 | 描述 |
3929| -------- | -------- |
3930| buckets | 表示指向[OH_Data_VBuckets](#oh_data_vbuckets)实例的指针。 |
3931| count | 一个输出参数,表示[OH_Data_VBuckets](#oh_data_vbuckets)中[OH_VBucket](_o_h___v_bucket.md)的个数。 |
3932
3933**返回:**
3934
3935返回错误码。
3936
3937返回RDB_OK表示成功。
3938
3939返回RDB_E_INVALID_ARGS表示无效参数。
3940
3941### OH_Rdb_CreateOrOpen()
3942
3943```
3944OH_Rdb_Store *OH_Rdb_CreateOrOpen (const OH_Rdb_ConfigV2 *config, int *errCode )
3945```
3946
3947**描述**
3948
3949使用指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),获得一个对应的[OH_Rdb_Store](_o_h___rdb___store.md)实例,用来操作关系型数据库。
3950
3951**起始版本:** 14
3952
3953**参数:**
3954
3955| 名称 | 描述 |
3956| -------- | -------- |
3957| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
3958| errCode | 表示函数执行状态,作为出参使用。RDB_OK表示成功。RDB_E_INVALID_ARGS表示无效参数。 |
3959
3960**返回:**
3961
3962创建成功则返回一个指向[OH_Rdb_Store](_o_h___rdb___store.md)结构体实例的指针,否则返回NULL。
3963
3964**参见:**
3965
3966[OH_Rdb_ConfigV2](#oh_rdb_configv2), [OH_Rdb_Store](_o_h___rdb___store.md).
3967
3968
3969### OH_Rdb_BeginTransWithTrxId()
3970
3971```
3972int OH_Rdb_BeginTransWithTrxId (OH_Rdb_Store *store, int64_t *trxId )
3973```
3974
3975**描述**
3976
3977在开始执行SQL语句之前,开始事务,并获得该事务的ID,仅支持向量数据库。
3978
3979**起始版本:** 14
3980
3981**参数:**
3982
3983| 名称 | 描述 |
3984| -------- | -------- |
3985| store | 表示一个指向 [OH_Rdb_Store](_o_h___rdb___store.md) 实例的指针。 |
3986| trxId | 事务ID,作为出参使用。 |
3987
3988**返回:**
3989
3990返回操作是否成功,出错时返回对应的错误码。
3991
3992RDB_OK 表示成功。
3993
3994RDB_E_INVALID_ARGS 表示无效参数。
3995
3996RDB_E_NOT_SUPPORTED 表示不支持当前操作。
3997
3998**参见:**
3999
4000[OH_Rdb_Store](_o_h___rdb___store.md).
4001
4002
4003### OH_Rdb_CommitByTrxId()
4004
4005```
4006int OH_Rdb_CommitByTrxId (OH_Rdb_Store *store, int64_t trxId )
4007```
4008
4009**描述**
4010
4011使用指定的事务ID,提交已经执行的SQL语句,仅支持向量数据库。
4012
4013**起始版本:** 14
4014
4015**参数:**
4016
4017| 名称 | 描述 |
4018| -------- | -------- |
4019| store | 表示一个指向 [OH_Rdb_Store](_o_h___rdb___store.md) 实例的指针。 |
4020| trxId | 表示需要提交的事务的ID。 |
4021
4022**返回:**
4023
4024返回操作是否成功,出错时返回对应的错误码。
4025
4026RDB_OK 表示成功。RDB_E_INVALID_ARGS 表示无效参数,可能情况如下:传入参数为空指针。当前事务ID不是调用[OH_Rdb_BeginTransWithTrxId](#oh_rdb_begintranswithtrxid)获得的。当前事务ID已经调用[OH_Rdb_CommitByTrxId](#oh_rdb_commitbytrxid)提交。当前事务ID已经调用[OH_Rdb_RollBackByTrxId](#oh_rdb_rollbackbytrxid)回滚。
4027
4028RDB_E_NOT_SUPPORTED 表示不支持当前操作。
4029
4030**参见:**
4031
4032[OH_Rdb_Store](_o_h___rdb___store.md).
4033
4034
4035### OH_Rdb_CreateConfig()
4036
4037```
4038OH_Rdb_ConfigV2 *OH_Rdb_CreateConfig ()
4039```
4040
4041**描述**
4042
4043创建一个[OH_Rdb_ConfigV2](#oh_rdb_configv2)实例,并返回指向该实例的指针。
4044
4045**起始版本:** 14
4046
4047**返回:**
4048
4049返回一个指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)实例的指针。
4050
4051**参见:**
4052
4053[OH_Rdb_ConfigV2](#oh_rdb_configv2)
4054
4055
4056
4057### OH_Rdb_DeleteStoreV2()
4058
4059```
4060int OH_Rdb_DeleteStoreV2 (const OH_Rdb_ConfigV2 *config)
4061```
4062
4063**描述**
4064
4065使用指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2)删除数据库。当使用向量数据库时,在调用接口前,应当确保向量数据库已经被正确关闭。
4066
4067**起始版本:** 14
4068
4069**参数:**
4070
4071| 名称 | 描述 |
4072| -------- | -------- |
4073| config | 表示数据库的配置。 |
4074
4075**返回:**
4076
4077返回操作是否成功,出错时返回对应的错误码。
4078
4079RDB_OK 表示成功。
4080
4081RDB_E_INVALID_ARGS 表示无效参数。
4082
4083**参见:**
4084
4085OH_Rdb_ErrCode.
4086
4087
4088### OH_Rdb_DestroyConfig()
4089
4090```
4091int OH_Rdb_DestroyConfig (OH_Rdb_ConfigV2 *config)
4092```
4093
4094**描述**
4095
4096销毁由[OH_Rdb_CreateConfig](#oh_rdb_createconfig)创建的[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象。
4097
4098**起始版本:** 14
4099
4100**参数:**
4101
4102| 名称 | 描述 |
4103| -------- | -------- |
4104| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
4105
4106**返回:**
4107
4108返回操作是否成功,出错时返回对应的错误码。
4109
4110RDB_OK 表示成功。
4111
4112RDB_E_INVALID_ARGS 表示无效参数。
4113
4114
4115### OH_Rdb_ExecuteByTrxId()
4116
4117```
4118int OH_Rdb_ExecuteByTrxId (OH_Rdb_Store *store, int64_t trxId, const char *sql )
4119```
4120
4121**描述**
4122
4123使用指定的事务ID执行无返回值的SQL语句,仅支持向量数据库。
4124
4125**起始版本:** 14
4126
4127**参数:**
4128
4129| 名称 | 描述 |
4130| -------- | -------- |
4131| store | 表示一个指向 [OH_Rdb_Store](_o_h___rdb___store.md) 实例的指针。 |
4132| trxId | 调用[OH_Rdb_BeginTransWithTrxId](#oh_rdb_begintranswithtrxid)获得的事务ID,当设置为0时,表示不启用事务。 |
4133| sql | 指定要执行的SQL语句。 |
4134
4135**返回:**
4136
4137返回操作是否成功,出错时返回对应的错误码。
4138
4139RDB_OK 表示成功。
4140
4141RDB_E_INVALID_ARGS 表示无效参数,可能情况如下:传入参数为空指针。当前事务ID不是调用[OH_Rdb_BeginTransWithTrxId](#oh_rdb_begintranswithtrxid)获得的。当前事务ID已经调用[OH_Rdb_CommitByTrxId](#oh_rdb_commitbytrxid)提交。当前事务ID已经调用[OH_Rdb_RollBackByTrxId](#oh_rdb_rollbackbytrxid)回滚。当store或者sql为NULL时。
4142
4143RDB_E_NOT_SUPPORTED 表示不支持当前操作。
4144
4145**参见:**
4146
4147[OH_Rdb_Store](_o_h___rdb___store.md).
4148
4149
4150### OH_Rdb_GetSupportedDbType()
4151
4152```
4153const int *OH_Rdb_GetSupportedDbType (int *typeCount)
4154```
4155
4156**描述**
4157
4158获得支持的数据库类型[Rdb_DBType](#rdb_dbtype)。
4159
4160**起始版本:** 14
4161
4162**参数:**
4163
4164| 名称 | 描述 |
4165| -------- | -------- |
4166| typeCount | 表示支持的数据库类型的数组的长度,作为出参使用。 |
4167
4168**返回:**
4169
4170返回操作是否成功,出错时返回对应的错误码。
4171
4172RDB_OK 表示成功。
4173
4174RDB_E_INVALID_ARGS 表示无效参数。
4175
4176
4177### OH_Rdb_RollBackByTrxId()
4178
4179```
4180int OH_Rdb_RollBackByTrxId (OH_Rdb_Store *store, int64_t trxId )
4181```
4182
4183**描述**
4184
4185使用指定的事务ID,回滚已经执行的SQL语句,仅支持向量数据库。
4186
4187**起始版本:** 14
4188
4189**参数:**
4190
4191| 名称 | 描述 |
4192| -------- | -------- |
4193| store | 表示一个指向 [OH_Rdb_Store](_o_h___rdb___store.md) 实例的指针。 |
4194| trxId | 表示需要回滚的事务的ID。 |
4195
4196**返回:**
4197
4198返回操作是否成功,出错时返回对应的错误码。
4199
4200RDB_OK 表示成功。
4201
4202RDB_E_INVALID_ARGS 表示无效参数,可能情况如下:传入参数为空指针。当前事务ID不是调用[OH_Rdb_BeginTransWithTrxId](#oh_rdb_begintranswithtrxid)获得的。当前事务ID已经调用[OH_Rdb_CommitByTrxId](#oh_rdb_commitbytrxid)提交。当前事务ID已经调用[OH_Rdb_RollBackByTrxId](#oh_rdb_rollbackbytrxid)回滚。
4203
4204RDB_E_NOT_SUPPORTED 表示不支持当前操作。
4205
4206**参见:**
4207
4208[OH_Rdb_Store](_o_h___rdb___store.md).
4209
4210
4211### OH_Rdb_SetArea()
4212
4213```
4214int OH_Rdb_SetArea (OH_Rdb_ConfigV2 *config, int area )
4215```
4216
4217**描述**
4218
4219给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库安全区域等级[Rdb_SecurityArea](#rdb_securityarea)。
4220
4221**起始版本:** 14
4222
4223**参数:**
4224
4225| 名称 | 描述 |
4226| -------- | -------- |
4227| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
4228| area | 表示数据库安全区域等级[Rdb_SecurityArea](#rdb_securityarea)。 |
4229
4230**返回:**
4231
4232返回操作是否成功,出错时返回对应的错误码。
4233
4234RDB_OK 表示成功。
4235
4236RDB_E_INVALID_ARGS 表示无效参数。
4237
4238
4239### OH_Rdb_SetBundleName()
4240
4241```
4242int OH_Rdb_SetBundleName (OH_Rdb_ConfigV2 *config, const char *bundleName )
4243```
4244
4245**描述**
4246
4247给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置应用包名。
4248
4249**起始版本:** 14
4250
4251**参数:**
4252
4253| 名称 | 描述 |
4254| -------- | -------- |
4255| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
4256| bundleName | 表示数据库应用包名。 |
4257
4258**返回:**
4259
4260返回操作是否成功,出错时返回对应的错误码。
4261
4262RDB_OK 表示成功。
4263
4264RDB_E_INVALID_ARGS 表示无效参数。
4265
4266
4267### OH_Rdb_SetDatabaseDir()
4268
4269```
4270int OH_Rdb_SetDatabaseDir (OH_Rdb_ConfigV2 *config, const char *databaseDir )
4271```
4272
4273**描述**
4274
4275给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库文件路径。
4276
4277**起始版本:** 14
4278
4279**参数:**
4280
4281| 名称 | 描述 |
4282| -------- | -------- |
4283| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
4284| dataBaseDir | 表示数据库文件路径。包含数据库名称在内的全路径长度不超过1024个字符。 |
4285
4286**返回:**
4287
4288返回操作是否成功,出错时返回对应的错误码。
4289
4290RDB_OK 表示成功。
4291
4292RDB_E_INVALID_ARGS 表示无效参数。
4293
4294
4295### OH_Rdb_SetDbType()
4296
4297```
4298int OH_Rdb_SetDbType (OH_Rdb_ConfigV2 *config, int dbType )
4299```
4300
4301**描述**
4302
4303给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库类型[Rdb_DBType](#rdb_dbtype)。
4304
4305**起始版本:** 14
4306
4307**参数:**
4308
4309| 名称 | 描述 |
4310| -------- | -------- |
4311| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
4312| dbType | 表示数据库的数据库类型 [Rdb_DBType](#rdb_dbtype)。 |
4313
4314**返回:**
4315
4316返回操作是否成功,出错时返回对应的错误码。
4317
4318RDB_OK 表示成功。
4319
4320RDB_E_INVALID_ARGS 表示无效参数。
4321
4322RDB_E_NOT_SUPPORTED 表示不支持当前操作。
4323
4324
4325### OH_Rdb_SetEncrypted()
4326
4327```
4328int OH_Rdb_SetEncrypted (OH_Rdb_ConfigV2 *config, bool isEncrypted )
4329```
4330
4331**描述**
4332
4333给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库是否加密。
4334
4335**起始版本:** 14
4336
4337**参数:**
4338
4339| 名称 | 描述 |
4340| -------- | -------- |
4341| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
4342| isEncrypted | 表示数据库是否加密,true表示加密,false表示不加密。 |
4343
4344**返回:**
4345
4346返回操作是否成功,出错时返回对应的错误码。
4347
4348RDB_OK 表示成功。
4349
4350RDB_E_INVALID_ARGS 表示无效参数。
4351
4352
4353### OH_Rdb_SetModuleName()
4354
4355```
4356int OH_Rdb_SetModuleName (OH_Rdb_ConfigV2 *config, const char *moduleName )
4357```
4358
4359**描述**
4360
4361给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置应用模块名。
4362
4363**起始版本:** 14
4364
4365**参数:**
4366
4367| 名称 | 描述 |
4368| -------- | -------- |
4369| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
4370| moduleName | 表示数据库应用模块名。 |
4371
4372**返回:**
4373
4374返回操作是否成功,出错时返回对应的错误码。
4375
4376RDB_OK 表示成功。
4377
4378RDB_E_INVALID_ARGS 表示无效参数。
4379
4380
4381### OH_Rdb_SetSecurityLevel()
4382
4383```
4384int OH_Rdb_SetSecurityLevel (OH_Rdb_ConfigV2 *config, int securityLevel )
4385```
4386
4387**描述**
4388
4389给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库安全级别[OH_Rdb_SecurityLevel](#oh_rdb_securitylevel)。
4390
4391**起始版本:** 14
4392
4393**参数:**
4394
4395| 名称 | 描述 |
4396| -------- | -------- |
4397| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
4398| securityLevel | 表示数据库安全级别 [OH_Rdb_SecurityLevel](#oh_rdb_securitylevel)。 |
4399
4400**返回:**
4401
4402返回操作是否成功,出错时返回对应的错误码。
4403
4404RDB_OK 表示成功。
4405
4406RDB_E_INVALID_ARGS 表示无效参数。
4407
4408
4409### OH_Rdb_SetStoreName()
4410
4411```
4412int OH_Rdb_SetStoreName (OH_Rdb_ConfigV2 *config, const char *storeName )
4413```
4414
4415**描述**
4416
4417给指定的数据库文件配置[OH_Rdb_ConfigV2](#oh_rdb_configv2),设置数据库名称。
4418
4419**起始版本:** 14
4420
4421**参数:**
4422
4423| 名称 | 描述 |
4424| -------- | -------- |
4425| config | 表示指向[OH_Rdb_ConfigV2](#oh_rdb_configv2)对象的指针,即与此RDB存储相关的数据库配置。 |
4426| storeName | 表示数据库名称。 |
4427
4428**返回:**
4429
4430返回操作是否成功,出错时返回对应的错误码。
4431
4432RDB_OK 表示成功。
4433
4434RDB_E_INVALID_ARGS 表示无效参数。
4435
4436### OH_Rdb_Backup()
4437
4438```
4439int OH_Rdb_Backup (OH_Rdb_Store *store, const char *databasePath )
4440```
4441
4442**描述**
4443
4444以指定路径备份数据库,支持向量数据库。
4445
4446**起始版本:** 10
4447
4448**参数:**
4449
4450| 名称 | 描述 |
4451| -------- | -------- |
4452| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4453| databasePath | 指定数据库的备份文件路径。 |
4454
4455**返回:**
4456
4457返回操作是否成功,出错时返回对应的错误码。
4458
4459RDB_OK 表示成功。
4460
4461RDB_E_INVALID_ARGS 表示无效参数。
4462
4463**参见:**
4464
4465[OH_Rdb_Store](_o_h___rdb___store.md).
4466
4467
4468### OH_Rdb_BeginTransaction()
4469
4470```
4471int OH_Rdb_BeginTransaction (OH_Rdb_Store *store)
4472```
4473
4474**描述**
4475
4476在开始执行SQL语句之前,开始事务。
4477
4478**起始版本:** 10
4479
4480**参数:**
4481
4482| 名称 | 描述 |
4483| -------- | -------- |
4484| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4485
4486**返回:**
4487
4488返回操作是否成功,出错时返回对应的错误码。
4489
4490RDB_OK 表示成功。
4491
4492RDB_E_INVALID_ARGS 表示无效参数。
4493
4494**参见:**
4495
4496[OH_Rdb_Store](_o_h___rdb___store.md).
4497
4498
4499### OH_Rdb_CloseStore()
4500
4501```
4502int OH_Rdb_CloseStore (OH_Rdb_Store *store)
4503```
4504
4505**描述**
4506
4507销毁[OH_Rdb_Store](_o_h___rdb___store.md)对象,并回收该对象占用的内存。
4508
4509**起始版本:** 10
4510
4511**参数:**
4512
4513| 名称 | 描述 |
4514| -------- | -------- |
4515| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4516
4517**返回:**
4518
4519返回操作是否成功,出错时返回对应的错误码。
4520
4521RDB_OK 表示成功。
4522
4523RDB_E_INVALID_ARGS 表示无效参数。
4524
4525**参见:**
4526
4527[OH_Rdb_Store](_o_h___rdb___store.md).
4528
4529
4530### OH_Rdb_CloudSync()
4531
4532```
4533int OH_Rdb_CloudSync (OH_Rdb_Store *store, Rdb_SyncMode mode, const char *tables[], uint32_t count, const Rdb_ProgressObserver *observer )
4534```
4535
4536**描述**
4537
4538进行端云同步。
4539
4540**起始版本:** 11
4541
4542**参数:**
4543
4544| 名称 | 描述 |
4545| -------- | -------- |
4546| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4547| mode | 表示同步过程的类型[Rdb_SyncMode](#rdb_syncmode). |
4548| tables | 表示需要同步的表名。 |
4549| count | 同步的表的数量,如果传入的值为0,同步数据库的所有表。 |
4550| observer | 端云同步进度的观察者[Rdb_ProgressObserver](_rdb___progress_observer.md)。 |
4551
4552**返回:**
4553
4554返回操作是否成功,出错时返回对应的错误码。
4555
4556RDB_OK 表示成功。
4557
4558RDB_E_INVALID_ARGS 表示无效参数。
4559
4560**参见:**
4561
4562[OH_Rdb_Store](_o_h___rdb___store.md).
4563
4564
4565### OH_Rdb_Commit()
4566
4567```
4568int OH_Rdb_Commit (OH_Rdb_Store *store)
4569```
4570
4571**描述**
4572
4573提交已执行的SQL语句。
4574
4575**起始版本:** 10
4576
4577**参数:**
4578
4579| 名称 | 描述 |
4580| -------- | -------- |
4581| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4582
4583**返回:**
4584
4585返回操作是否成功,出错时返回对应的错误码。
4586
4587RDB_OK 表示成功。
4588
4589RDB_E_INVALID_ARGS 表示无效参数。
4590
4591**参见:**
4592
4593[OH_Rdb_Store](_o_h___rdb___store.md).
4594
4595
4596### OH_Rdb_CreatePredicates()
4597
4598```
4599OH_Predicates* OH_Rdb_CreatePredicates (const char *table)
4600```
4601
4602**描述**
4603
4604创建[OH_Predicates](_o_h___predicates.md)实例。
4605
4606**起始版本:** 10
4607
4608**参数:**
4609
4610| 名称 | 描述 |
4611| -------- | -------- |
4612| table | 表示数据库表名。 |
4613
4614**返回:**
4615
4616创建成功则返回一个指向[OH_Predicates](_o_h___predicates.md)结构体实例的指针,否则返回NULL。
4617
4618**参见:**
4619
4620[OH_Predicates](_o_h___predicates.md).
4621
4622
4623### OH_Rdb_CreateValueObject()
4624
4625```
4626OH_VObject* OH_Rdb_CreateValueObject ()
4627```
4628
4629**描述**
4630
4631创建[OH_VObject](_o_h___v_object.md)实例。
4632
4633**起始版本:** 10
4634
4635**返回:**
4636
4637创建成功则返回一个指向[OH_VObject](_o_h___v_object.md)结构体实例的指针,否则返回NULL。
4638
4639**参见:**
4640
4641[OH_VObject](_o_h___v_object.md).
4642
4643
4644### OH_Rdb_CreateValuesBucket()
4645
4646```
4647OH_VBucket* OH_Rdb_CreateValuesBucket ()
4648```
4649
4650**描述**
4651
4652创建[OH_VBucket](_o_h___v_bucket.md)实例。
4653
4654**起始版本:** 10
4655
4656**返回:**
4657
4658创建成功则返回一个指向[OH_VBucket](_o_h___v_bucket.md)结构体实例的指针,否则返回NULL。
4659
4660**参见:**
4661
4662[OH_VBucket](_o_h___v_bucket.md).
4663
4664
4665### OH_Rdb_Delete()
4666
4667```
4668int OH_Rdb_Delete (OH_Rdb_Store *store, OH_Predicates *predicates )
4669```
4670
4671**描述**
4672
4673根据指定的条件删除数据库中的数据。
4674
4675**起始版本:** 10
4676
4677**参数:**
4678
4679| 名称 | 描述 |
4680| -------- | -------- |
4681| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4682| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针,指定删除条件。 |
4683
4684**返回:**
4685
4686如果删除成功,返回删除的行数;如果失败,则返回的结果小于0。
4687
4688**参见:**
4689
4690[OH_Rdb_Store](_o_h___rdb___store.md), [OH_Predicates](_o_h___predicates.md).
4691
4692
4693### OH_Rdb_DeleteStore()
4694
4695```
4696int OH_Rdb_DeleteStore (const OH_Rdb_Config *config)
4697```
4698
4699**描述**
4700
4701使用指定的数据库文件配置删除数据库。
4702
4703**起始版本:** 10
4704
4705**参数:**
4706
4707| 名称 | 描述 |
4708| -------- | -------- |
4709| config | 表示数据库的配置。 |
4710
4711**返回:**
4712
4713返回操作是否成功,出错时返回对应的错误码。
4714
4715
4716### OH_Rdb_Execute()
4717
4718```
4719int OH_Rdb_Execute (OH_Rdb_Store *store, const char *sql )
4720```
4721
4722**描述**
4723
4724执行无返回值的SQL语句。
4725
4726**起始版本:** 10
4727
4728**参数:**
4729
4730| 名称 | 描述 |
4731| -------- | -------- |
4732| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4733| sql | 指定要执行的SQL语句。 |
4734
4735**返回:**
4736
4737返回操作是否成功,出错时返回对应的错误码。
4738
4739RDB_OK 表示成功。
4740
4741RDB_E_INVALID_ARGS 表示无效参数。
4742
4743**参见:**
4744
4745[OH_Rdb_Store](_o_h___rdb___store.md).
4746
4747
4748### OH_Rdb_ExecuteQuery()
4749
4750```
4751OH_Cursor* OH_Rdb_ExecuteQuery (OH_Rdb_Store *store, const char *sql )
4752```
4753
4754**描述**
4755
4756根据指定SQL语句查询数据库中的数据,支持向量数据库 。
4757
4758**起始版本:** 10
4759
4760**参数:**
4761
4762| 名称 | 描述 |
4763| -------- | -------- |
4764| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4765| sql | 指定要执行的SQL语句。 |
4766
4767**返回:**
4768
4769如果查询成功则返回一个指向[OH_Cursor](_o_h___cursor.md)结构体实例的指针,否则返回NULL。
4770
4771**参见:**
4772
4773[OH_Rdb_Store](_o_h___rdb___store.md).
4774
4775
4776### OH_Rdb_FindModifyTime()
4777
4778```
4779OH_Cursor* OH_Rdb_FindModifyTime (OH_Rdb_Store *store, const char *tableName, const char *columnName, OH_VObject *values )
4780```
4781
4782**描述**
4783
4784获取数据库表中数据的最后修改时间。
4785
4786**起始版本:** 11
4787
4788**参数:**
4789
4790| 名称 | 描述 |
4791| -------- | -------- |
4792| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4793| tableName | 要查找的分布式数据库表表名。 |
4794| columnName | 指定要查询的数据库表的列名。 |
4795| values | 指定要查询的行的主键。如果数据库表无主键,参数columnName需传入"rowid",此时values为要查询的数据库表的行号。 |
4796
4797**返回:**
4798
4799返回操作是否成功,出错时返回对应的错误码。
4800
4801**参见:**
4802
4803[OH_Rdb_Store](_o_h___rdb___store.md).
4804
4805
4806### OH_Rdb_GetOrOpen()
4807
4808```
4809OH_Rdb_Store* OH_Rdb_GetOrOpen (const OH_Rdb_Config *config, int *errCode )
4810```
4811
4812**描述**
4813
4814获得一个相关的[OH_Rdb_Store](_o_h___rdb___store.md)实例,操作关系型数据库。
4815
4816**起始版本:** 10
4817
4818**参数:**
4819
4820| 名称 | 描述 |
4821| -------- | -------- |
4822| config | 表示指向[OH_Rdb_Config](_o_h___rdb___config.md)实例的指针,与此RDB存储相关的数据库配置。 |
4823| errCode | 该参数是输出参数,函数执行状态写入该变量。 |
4824
4825**返回:**
4826
4827创建成功则返回一个指向[OH_Rdb_Store](_o_h___rdb___store.md)结构体实例的指针,否则返回NULL。
4828
4829**参见:**
4830
4831[OH_Rdb_Config](_o_h___rdb___config.md), [OH_Rdb_Store](_o_h___rdb___store.md).
4832
4833
4834### OH_Rdb_GetTableDetails()
4835
4836```
4837Rdb_TableDetails* OH_Rdb_GetTableDetails (Rdb_ProgressDetails *progress, int32_t version )
4838```
4839
4840**描述**
4841
4842从端云同步任务的统计信息中获取数据库表的统计信息。
4843
4844**起始版本:** 11
4845
4846**参数:**
4847
4848| 名称 | 描述 |
4849| -------- | -------- |
4850| progress | 表示指向**OH_ProgressDetails**实例的指针。 |
4851| version | 表示当前[Rdb_ProgressDetails](_rdb___progress_details.md)的版本。 |
4852
4853**返回:**
4854
4855如果操作成功,会返回一个[Rdb_TableDetails](_rdb___table_details.md)结构体的指针,否则返回NULL。
4856
4857**参见:**
4858
4859[Rdb_ProgressDetails](_rdb___progress_details.md)
4860
4861[Rdb_TableDetails](_rdb___table_details.md)
4862
4863
4864### OH_Rdb_GetVersion()
4865
4866```
4867int OH_Rdb_GetVersion (OH_Rdb_Store *store, int *version )
4868```
4869
4870**描述**
4871
4872获取数据库版本。
4873
4874**起始版本:** 10
4875
4876**参数:**
4877
4878| 名称 | 描述 |
4879| -------- | -------- |
4880| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4881| version |  该参数是输出参数,表示版本号。 |
4882
4883**返回:**
4884
4885返回操作是否成功,出错时返回对应的错误码。
4886
4887**参见:**
4888
4889[OH_Rdb_Store](_o_h___rdb___store.md).
4890
4891
4892### OH_Rdb_Insert()
4893
4894```
4895int OH_Rdb_Insert (OH_Rdb_Store *store, const char *table, OH_VBucket *valuesBucket )
4896```
4897
4898**描述**
4899
4900向目标表中插入一行数据。
4901
4902**起始版本:** 10
4903
4904**参数:**
4905
4906| 名称 | 描述 |
4907| -------- | -------- |
4908| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4909| table | 表示指定的目标表名。 |
4910| valuesBucket | 表示要插入到表中的数据行[OH_VBucket](_o_h___v_bucket.md)。 |
4911
4912**返回:**
4913
4914如果插入成功,返回rowID,否则返回的结果小于0。
4915
4916**参见:**
4917
4918[OH_Rdb_Store](_o_h___rdb___store.md), [OH_VBucket](_o_h___v_bucket.md).
4919
4920### OH_Rdb_LockRow()
4921
4922```
4923int OH_Rdb_LockRow (OH_Rdb_Store *store, OH_Predicates *predicates )
4924```
4925
4926**描述**
4927
4928根据指定的条件锁定数据库中的数据,锁定数据不执行端云同步。
4929
4930**起始版本:** 12
4931
4932**参数:**
4933
4934| 名称 | 描述 |
4935| -------- | -------- |
4936| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4937| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针,指定锁定条件。 |
4938
4939**返回:**
4940
4941返回锁定结果。
4942
4943**参见:**
4944
4945[OH_Rdb_Store](_o_h___rdb___store.md), [OH_Predicates](_o_h___predicates.md).
4946
4947### OH_Rdb_Query()
4948
4949```
4950OH_Cursor* OH_Rdb_Query (OH_Rdb_Store *store, OH_Predicates *predicates, const char *const *columnNames, int length )
4951```
4952
4953**描述**
4954
4955根据指定条件查询数据库中的数据。
4956
4957**起始版本:** 10
4958
4959**参数:**
4960
4961| 名称 | 描述 |
4962| -------- | -------- |
4963| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4964| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针,指定查询条件。 |
4965| columnNames | 表示要查询的列。如果值为空,则查询应用于所有列。 |
4966| length | 表示columnNames数组的长度。若length大于columnNames数组的实际长度,则会访问越界。 |
4967
4968**返回:**
4969
4970如果查询成功则返回一个指向[OH_Cursor](_o_h___cursor.md)结构体实例的指针,否则返回NULL。
4971
4972**参见:**
4973
4974[OH_Rdb_Store](_o_h___rdb___store.md), [OH_Predicates](_o_h___predicates.md), [OH_Cursor](_o_h___cursor.md).
4975
4976### OH_Rdb_QueryLockedRow()
4977
4978```
4979OH_Cursor *OH_Rdb_QueryLockedRow (OH_Rdb_Store *store, OH_Predicates *predicates, const char *const *columnNames, int length )
4980```
4981
4982**描述**
4983
4984根据指定条件查询数据库中锁定的数据。
4985
4986**起始版本:** 12
4987
4988**参数:**
4989
4990| 名称 | 描述 |
4991| -------- | -------- |
4992| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
4993| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针,指定查询条件。 |
4994| columnNames | 表示要查询的列。如果值为空,则查询应用于所有列。 |
4995| length | 表示columnNames数组的长度。若length大于columnNames数组的实际长度,则会访问越界。 |
4996
4997**返回:**
4998
4999如果查询成功则返回一个指向[OH_Cursor](_o_h___cursor.md)结构体实例的指针,否则返回NULL。
5000
5001**参见:**
5002
5003[OH_Rdb_Store](_o_h___rdb___store.md), [OH_Predicates](_o_h___predicates.md), [OH_Cursor](_o_h___cursor.md).
5004
5005### OH_Rdb_Restore()
5006
5007```
5008int OH_Rdb_Restore (OH_Rdb_Store *store, const char *databasePath )
5009```
5010
5011**描述**
5012
5013从指定的数据库备份文件恢复数据库,支持向量数据库。
5014
5015**起始版本:** 10
5016
5017**参数:**
5018
5019| 名称 | 描述 |
5020| -------- | -------- |
5021| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5022| databasePath | 指定数据库的备份文件路径。 |
5023
5024**返回:**
5025
5026返回操作是否成功,出错时返回对应的错误码。
5027
5028RDB_OK 表示成功。
5029
5030RDB_E_INVALID_ARGS 表示无效参数。
5031
5032**参见:**
5033
5034[OH_Rdb_Store](_o_h___rdb___store.md).
5035
5036
5037### OH_Rdb_RollBack()
5038
5039```
5040int OH_Rdb_RollBack (OH_Rdb_Store *store)
5041```
5042
5043**描述**
5044
5045回滚已经执行的SQL语句。
5046
5047**起始版本:** 10
5048
5049**参数:**
5050
5051| 名称 | 描述 |
5052| -------- | -------- |
5053| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5054
5055**返回:**
5056
5057返回操作是否成功,出错时返回对应的错误码。
5058
5059RDB_OK 表示成功。
5060
5061RDB_E_INVALID_ARGS 表示无效参数。
5062
5063**参见:**
5064
5065[OH_Rdb_Store](_o_h___rdb___store.md).
5066
5067
5068### OH_Rdb_SetDistributedTables()
5069
5070```
5071int OH_Rdb_SetDistributedTables (OH_Rdb_Store *store, const char *tables[], uint32_t count, Rdb_DistributedType type, const Rdb_DistributedConfig * config )
5072```
5073
5074**描述**
5075
5076设置分布式数据库表。
5077
5078**起始版本:** 11
5079
5080**参数:**
5081
5082| 名称 | 描述 |
5083| -------- | -------- |
5084| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5085| tables | 要设置的分布式数据库表表名。 |
5086| count | 要设置的分布式数据库表的数量。 |
5087| type | 表的分布式类型 [Rdb_DistributedType](#rdb_distributedtype)。 |
5088| config | 表的分布式配置信息。[Rdb_DistributedConfig](_rdb___distributed_config.md)。 |
5089
5090**返回:**
5091
5092返回操作是否成功,出错时返回对应的错误码。
5093
5094RDB_OK 表示成功。
5095
5096RDB_E_INVALID_ARGS 表示无效参数。
5097
5098**参见:**
5099
5100[OH_Rdb_Store](_o_h___rdb___store.md).
5101
5102
5103### OH_Rdb_SetVersion()
5104
5105```
5106int OH_Rdb_SetVersion (OH_Rdb_Store *store, int version )
5107```
5108
5109**描述**
5110
5111设置数据库版本。
5112
5113**起始版本:** 10
5114
5115**参数:**
5116
5117| 名称 | 描述 |
5118| -------- | -------- |
5119| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5120| version | 表示版本号。 |
5121
5122**返回:**
5123
5124返回操作是否成功,出错时返回对应的错误码。
5125
5126RDB_OK 表示成功。
5127
5128RDB_E_INVALID_ARGS 表示无效参数。
5129
5130**参见:**
5131
5132[OH_Rdb_Store](_o_h___rdb___store.md).
5133
5134
5135### OH_Rdb_Subscribe()
5136
5137```
5138int OH_Rdb_Subscribe (OH_Rdb_Store *store, Rdb_SubscribeType type, const Rdb_DataObserver *observer )
5139```
5140
5141**描述**
5142
5143为数据库注册观察者。当分布式数据库中的数据发生更改时,将调用回调。
5144
5145**起始版本:** 11
5146
5147**参数:**
5148
5149| 名称 | 描述 |
5150| -------- | -------- |
5151| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5152| type | 表示在[Rdb_SubscribeType](#rdb_subscribetype)中定义的订阅类型。 |
5153| observer | 数据库中更改事件的观察者[Rdb_DataObserver](_rdb___data_observer.md)。 |
5154
5155**返回:**
5156
5157返回操作是否成功,出错时返回对应的错误码。
5158
5159RDB_OK 表示成功。
5160
5161RDB_E_INVALID_ARGS 表示无效参数。
5162
5163**参见:**
5164
5165[OH_Rdb_Store](_o_h___rdb___store.md).
5166
5167[Rdb_DataObserver](_rdb___data_observer.md).
5168
5169
5170### OH_Rdb_SubscribeAutoSyncProgress()
5171
5172```
5173int OH_Rdb_SubscribeAutoSyncProgress (OH_Rdb_Store *store, const Rdb_ProgressObserver *observer )
5174```
5175
5176**描述**
5177
5178订阅RDB存储的自动同步进度。当收到自动同步进度的通知时,将调用回调。RDB_OK表示成功。RDB_E_INVALID_ARGS表示无效参数。
5179
5180**起始版本:** 11
5181
5182**参数:**
5183
5184| 名称 | 描述 |
5185| -------- | -------- |
5186| store | 表示指向目标[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5187| observer | 用于自动同步进度的观察者[Rdb_ProgressObserver](_rdb___progress_observer.md)。表示调用返回自动同步进度的回调。 |
5188
5189**返回:**
5190
5191返回操作是否成功,出错时返回对应的错误码。
5192
5193**参见:**
5194
5195[OH_Rdb_Store](_o_h___rdb___store.md).
5196
5197[Rdb_ProgressObserver](_rdb___progress_observer.md).
5198
5199### OH_Rdb_UnlockRow()
5200
5201```
5202int OH_Rdb_UnlockRow (OH_Rdb_Store *store, OH_Predicates *predicates )
5203```
5204
5205**描述**
5206
5207根据指定的条件锁解锁数据库中的数据。
5208
5209**起始版本:** 12
5210
5211**参数:**
5212
5213| 名称 | 描述 |
5214| -------- | -------- |
5215| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5216| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针,指定解锁条件。 |
5217
5218**返回:**
5219
5220返回解锁结果。
5221
5222**参见:**
5223
5224[OH_Rdb_Store](_o_h___rdb___store.md), [OH_Predicates](_o_h___predicates.md).
5225
5226### OH_Rdb_Unsubscribe()
5227
5228```
5229int OH_Rdb_Unsubscribe (OH_Rdb_Store *store, Rdb_SubscribeType type, const Rdb_DataObserver *observer )
5230```
5231
5232**描述**
5233
5234从数据库中删除指定类型的指定观察者。
5235
5236**起始版本:** 11
5237
5238**参数:**
5239
5240| 名称 | 描述 |
5241| -------- | -------- |
5242| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5243| type | 表示在[Rdb_SubscribeType](#rdb_subscribetype)中定义的订阅类型。 |
5244| observer | 数据库中更改事件的观察者[Rdb_DataObserver](_rdb___data_observer.md)。如果这是nullptr,表示删除该类型的所有观察者。 |
5245
5246**返回:**
5247
5248返回操作是否成功,出错时返回对应的错误码。
5249
5250RDB_OK 表示成功。
5251
5252RDB_E_INVALID_ARGS 表示无效参数。
5253
5254**参见:**
5255
5256[OH_Rdb_Store](_o_h___rdb___store.md).
5257
5258[Rdb_DataObserver](_rdb___data_observer.md).
5259
5260
5261### OH_Rdb_UnsubscribeAutoSyncProgress()
5262
5263```
5264int OH_Rdb_UnsubscribeAutoSyncProgress (OH_Rdb_Store *store, const Rdb_ProgressObserver *observer )
5265```
5266
5267**描述**
5268
5269取消订阅RDB存储的自动同步进程。
5270
5271**起始版本:** 11
5272
5273**参数:**
5274
5275| 名称 | 描述 |
5276| -------- | -------- |
5277| store | 表示指向目标[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5278| observer | 表示自动同步进度的观察者[Rdb_ProgressObserver](_rdb___progress_observer.md)。如果是空指针,则自动同步进程的所有回调都将被取消注册。 |
5279
5280**返回:**
5281
5282返回操作是否成功,出错时返回对应的错误码。
5283
5284RDB_OK 表示成功。
5285
5286RDB_E_INVALID_ARGS 表示无效参数。
5287
5288**参见:**
5289
5290[OH_Rdb_Store](_o_h___rdb___store.md).
5291
5292[Rdb_ProgressObserver](_rdb___progress_observer.md).
5293
5294
5295### OH_Rdb_Update()
5296
5297```
5298int OH_Rdb_Update (OH_Rdb_Store *store, OH_VBucket *valuesBucket, OH_Predicates *predicates )
5299```
5300
5301**描述**
5302
5303根据指定的条件更新数据库中的数据。
5304
5305**起始版本:** 10
5306
5307**参数:**
5308
5309| 名称 | 描述 |
5310| -------- | -------- |
5311| store | 表示指向[OH_Rdb_Store](_o_h___rdb___store.md)实例的指针。 |
5312| valuesBucket | 表示要更新到表中的数据行[OH_VBucket](_o_h___v_bucket.md)。 |
5313| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针,指定更新条件。 |
5314
5315**返回:**
5316
5317如果更新成功,返回更新的行数,否则返回的结果小于0。
5318
5319**参见:**
5320
5321[OH_Rdb_Store](_o_h___rdb___store.md), [OH_Bucket](_o_h___v_bucket.md), [OH_Predicates](_o_h___predicates.md).
5322
5323
5324### OH_VBucket_PutAsset()
5325
5326```
5327int OH_VBucket_PutAsset (OH_VBucket *bucket, const char *field, Data_Asset *value )
5328```
5329
5330**描述**
5331
5332将**Data_Asset**类型的对象放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。
5333
5334**起始版本:** 11
5335
5336**参数:**
5337
5338| 名称 | 描述 |
5339| -------- | -------- |
5340| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
5341| field | 数据库表中的列名。 |
5342| value | 数据库表中指定列名对应的值。 |
5343
5344**返回:**
5345
5346返回操作是否成功,出错时返回对应的错误码。
5347
5348**参见:**
5349
5350[OH_VBucket](_o_h___v_bucket.md).
5351
5352
5353### OH_VBucket_PutAssets()
5354
5355```
5356int OH_VBucket_PutAssets (OH_VBucket *bucket, const char *field, Data_Asset **value, int count )
5357```
5358
5359**描述**
5360
5361将**Data_Asset**类型的对象数组放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。
5362
5363**起始版本:** 11
5364
5365**参数:**
5366
5367| 名称 | 描述 |
5368| -------- | -------- |
5369| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
5370| field | 数据库表中的列名。 |
5371| value | 数据库表中指定列名对应的值。 |
5372| count | 表示传入的**Data_Asset**对象数组元素的个数。 |
5373
5374**返回:**
5375
5376返回操作是否成功,出错时返回对应的错误码。
5377
5378**参见:**
5379
5380[OH_VBucket](_o_h___v_bucket.md).
5381
5382## 变量说明
5383
5384
5385### andOperate
5386
5387```
5388OH_Predicates *(*andOperate) (OH_Predicates *predicates)
5389```
5390
5391**描述**
5392
5393函数指针,向谓词添加和条件。
5394
5395该方法等同于SQL语句中的“AND”。
5396
5397**起始版本:** 10
5398
5399**参数:**
5400
5401| 名称 | 描述 |
5402| -------- | -------- |
5403| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
5404
5405**返回:**
5406
5407返回带有和条件的谓词。
5408
5409**参见:**
5410
5411[OH_Predicates](_o_h___predicates.md).
5412
5413
5414### area
5415
5416```
5417int OH_Rdb_Config::area
5418```
5419
5420**描述**
5421
5422设置数据库安全区域等级[Rdb_SecurityArea](#rdb_securityarea)。
5423
5424**起始版本:** 11
5425
5426
5427### beginWrap
5428
5429```
5430OH_Predicates *(*beginWrap) (OH_Predicates *predicates)
5431```
5432
5433**描述**
5434
5435函数指针,向谓词添加左括号。
5436
5437该方法等同于SQL语句中的“(”。
5438
5439**起始版本:** 10
5440
5441**参数:**
5442
5443| 名称 | 描述 |
5444| -------- | -------- |
5445| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
5446
5447**返回:**
5448
5449返回带有左括号的谓词。
5450
5451**参见:**
5452
5453[OH_Predicates](_o_h___predicates.md).
5454
5455
5456### between
5457
5458```
5459OH_Predicates *(*between) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
5460```
5461
5462**描述**
5463
5464函数指针,将谓词配置为匹配数据字段为field且其值在给定范围内的指定字段。
5465
5466该方法等同于SQL语句中的“BETWEEN”。
5467
5468**起始版本:** 10
5469
5470**参数:**
5471
5472| 名称 | 描述 |
5473| -------- | -------- |
5474| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
5475| field | 数据库表中的列名。 |
5476| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
5477
5478**返回:**
5479
5480返回与指定字段匹配的谓词。
5481
5482**参见:**
5483
5484[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
5485
5486
5487### briefObserver
5488
5489```
5490Rdb_BriefObserver Rdb_SubscribeCallback::briefObserver
5491```
5492
5493**描述**
5494
5495端云数据更改事件的回调函数。
5496
5497
5498### bundleName
5499
5500```
5501const char* OH_Rdb_Config::bundleName
5502```
5503
5504**描述**
5505
5506应用包名。
5507
5508
5509### callback [1/2]
5510
5511```
5512Rdb_SubscribeCallback Rdb_DataObserver::callback
5513```
5514
5515**描述**
5516
5517数据观察者的回调。
5518
5519
5520### callback [2/2]
5521
5522```
5523Rdb_ProgressCallback Rdb_ProgressObserver::callback
5524```
5525
5526**描述**
5527
5528端云同步进度观察者的回调函数。
5529
5530
5531### capability
5532
5533```
5534uint16_t OH_VBucket::capability
5535```
5536
5537**描述**
5538
5539表示结构体的存储键值对的数量。
5540
5541
5542### ChangeType
5543
5544```
5545int Rdb_ChangeInfo::ChangeType
5546```
5547
5548**描述**
5549
5550表示发生变化的数据的类型,数据或者资产附件发生变化。
5551
5552
5553### clear [1/2]
5554
5555```
5556OH_Predicates *(*clear) (OH_Predicates *predicates)
5557```
5558
5559**描述**
5560
5561函数指针,清空谓词。
5562
5563**起始版本:** 10
5564
5565**参数:**
5566
5567| 名称 | 描述 |
5568| -------- | -------- |
5569| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
5570
5571**返回:**
5572
5573返回清空后的谓词。
5574
5575**参见:**
5576
5577[OH_Predicates](_o_h___predicates.md).
5578
5579
5580### clear [2/2]
5581
5582```
5583int(*clear) (OH_VBucket *bucket)
5584```
5585
5586**描述**
5587
5588清空[OH_VBucket](_o_h___v_bucket.md)对象。
5589
5590**起始版本:** 10
5591
5592**参数:**
5593
5594| 名称 | 描述 |
5595| -------- | -------- |
5596| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
5597
5598**返回:**
5599
5600返回操作是否成功,出错时返回对应的错误码。
5601
5602**参见:**
5603
5604[OH_VBucket](_o_h___v_bucket.md).
5605
5606
5607### code
5608
5609```
5610int Rdb_ProgressDetails::code
5611```
5612
5613**描述**
5614
5615表示端云同步过程的状态。
5616
5617
5618### context [1/2]
5619
5620```
5621void* Rdb_DataObserver::context
5622```
5623
5624**描述**
5625
5626表示数据观察者的上下文。
5627
5628
5629### context [2/2]
5630
5631```
5632void* Rdb_ProgressObserver::context
5633```
5634
5635**描述**
5636
5637端云同步进度观察者的上下文。
5638
5639
5640### count
5641
5642```
5643int Rdb_KeyInfo::count
5644```
5645
5646**描述**
5647
5648表示发生变化的主键或者行号的数量。
5649
5650
5651### dataBaseDir
5652
5653```
5654const char* OH_Rdb_Config::dataBaseDir
5655```
5656
5657**描述**
5658
5659数据库文件路径。
5660
5661
5662### deleted
5663
5664```
5665Rdb_KeyInfo Rdb_ChangeInfo::deleted
5666```
5667
5668**描述**
5669
5670记录删除数据的位置,如果该表的主键是string类型,该值是主键的值,否则该值表示删除数据的行号。
5671
5672
5673### destroy [1/4]
5674
5675```
5676int(*destroy) (OH_Cursor *cursor)
5677```
5678
5679**描述**
5680
5681函数指针,关闭结果集。
5682
5683**起始版本:** 10
5684
5685**参数:**
5686
5687| 名称 | 描述 |
5688| -------- | -------- |
5689| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
5690
5691**返回:**
5692
5693返回操作是否成功,出错时返回对应的错误码。
5694
5695**参见:**
5696
5697[OH_Cursor](_o_h___cursor.md).
5698
5699
5700### destroy [2/4]
5701
5702```
5703int(*destroy) (OH_Predicates *predicates)
5704```
5705
5706**描述**
5707
5708销毁[OH_Predicates](_o_h___predicates.md)对象,并回收该对象占用的内存。
5709
5710**起始版本:** 10
5711
5712**参数:**
5713
5714| 名称 | 描述 |
5715| -------- | -------- |
5716| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
5717
5718**返回:**
5719
5720返回操作是否成功,出错时返回对应的错误码。
5721
5722**参见:**
5723
5724[OH_Predicates](_o_h___predicates.md).
5725
5726
5727### destroy [3/4]
5728
5729```
5730int(*destroy) (OH_VBucket *bucket)
5731```
5732
5733**描述**
5734
5735销毁[OH_VBucket](_o_h___v_bucket.md)对象,并回收该对象占用的内存。
5736
5737**起始版本:** 10
5738
5739**参数:**
5740
5741| 名称 | 描述 |
5742| -------- | -------- |
5743| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
5744
5745**返回:**
5746
5747返回操作是否成功,出错时返回对应的错误码。
5748
5749**参见:**
5750
5751[OH_VBucket](_o_h___v_bucket.md).
5752
5753
5754### destroy [4/4]
5755
5756```
5757int(*destroy) (OH_VObject *valueObject)
5758```
5759
5760**描述**
5761
5762销毁[OH_VObject](_o_h___v_object.md)对象,并回收该对象占用的内存。
5763
5764**起始版本:** 10
5765
5766**参数:**
5767
5768| 名称 | 描述 |
5769| -------- | -------- |
5770| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针。 |
5771
5772**返回:**
5773
5774返回操作是否成功,出错时返回对应的错误码。
5775
5776**参见:**
5777
5778[OH_VObject](_o_h___v_object.md).
5779
5780
5781### detailsObserver
5782
5783```
5784Rdb_DetailsObserver Rdb_SubscribeCallback::detailsObserver
5785```
5786
5787**描述**
5788
5789端云数据更改事件的细节的回调函数。
5790
5791
5792### distinct
5793
5794```
5795OH_Predicates *(*distinct) (OH_Predicates *predicates)
5796```
5797
5798**描述**
5799
5800函数指针,配置谓词以过滤重复记录并仅保留其中一个。
5801
5802该方法等同于SQL语句中的“DISTINCT”。
5803
5804**起始版本:** 10
5805
5806**参数:**
5807
5808| 名称 | 描述 |
5809| -------- | -------- |
5810| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
5811
5812**返回:**
5813
5814返回可用于过滤重复记录的谓词。
5815
5816**参见:**
5817
5818[OH_Predicates](_o_h___predicates.md).
5819
5820
5821### download
5822
5823```
5824Rdb_Statistic Rdb_TableDetails::download
5825```
5826
5827**描述**
5828
5829表示数据库表中端云同步下载过程的统计信息。
5830
5831
5832### endWrap
5833
5834```
5835OH_Predicates *(*endWrap) (OH_Predicates *predicates)
5836```
5837
5838**描述**
5839
5840函数指针,向谓词添加右括号。
5841
5842该方法等同于SQL语句中的“)”。
5843
5844**起始版本:** 10
5845
5846**参数:**
5847
5848| 名称 | 描述 |
5849| -------- | -------- |
5850| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
5851
5852**返回:**
5853
5854返回带有右括号的谓词。
5855
5856**参见:**
5857
5858[OH_Predicates](_o_h___predicates.md).
5859
5860
5861### equalTo
5862
5863```
5864OH_Predicates *(*equalTo) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
5865```
5866
5867**描述**
5868
5869函数指针,配置谓词以匹配数据字段等于指定值的字段。
5870
5871该方法等同于SQL语句中的“=”。
5872
5873**起始版本:** 10
5874
5875**参数:**
5876
5877| 名称 | 描述 |
5878| -------- | -------- |
5879| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
5880| field | 数据库表中的列名 |
5881| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
5882
5883**返回:**
5884
5885返回与指定字段匹配的谓词。
5886
5887**参见:**
5888
5889[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
5890
5891
5892### failed
5893
5894```
5895int Rdb_Statistic::failed
5896```
5897
5898**描述**
5899
5900表示数据库表中端云同步失败的行数。
5901
5902
5903### getAsset
5904
5905```
5906int(*getAsset) (OH_Cursor *cursor, int32_t columnIndex, Data_Asset *value)
5907```
5908
5909**描述**
5910
5911函数指针,以资产的形式获取当前行中指定列的值。
5912
5913**起始版本:** 11
5914
5915**参数:**
5916
5917| 名称 | 描述 |
5918| -------- | -------- |
5919| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
5920| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
5921| value | 该参数是输出参数,结果集中指定列的值会以资产形式写入该变量。 |
5922
5923**返回:**
5924
5925返回操作是否成功,出错时返回对应的错误码。
5926
5927**参见:**
5928
5929[OH_Cursor](_o_h___cursor.md).
5930
5931
5932### getAssets
5933
5934```
5935int(*getAssets) (OH_Cursor *cursor, int32_t columnIndex, Data_Asset **value, uint32_t length)
5936```
5937
5938**描述**
5939
5940函数指针,以资产数组的形式获取当前行中指定列的值。
5941
5942**起始版本:** 11
5943
5944**参数:**
5945
5946| 名称 | 描述 |
5947| -------- | -------- |
5948| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
5949| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
5950| value | 该参数是输出参数,结果集中指定列的值会以资产数组形式写入该变量。 |
5951| length | 表示资产数组的长度。 |
5952
5953**返回:**
5954
5955返回操作是否成功,出错时返回对应的错误码。
5956
5957**参见:**
5958
5959[OH_Cursor](_o_h___cursor.md).
5960
5961
5962### getBlob
5963
5964```
5965int(*getBlob) (OH_Cursor *cursor, int32_t columnIndex, unsigned char *value, int length)
5966```
5967
5968**描述**
5969
5970函数指针,以字节数组的形式获取当前行中指定列的值。
5971
5972**起始版本:** 10
5973
5974**参数:**
5975
5976| 名称 | 描述 |
5977| -------- | -------- |
5978| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
5979| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
5980| value | 该参数是输出参数,结果集中指定列的值会以字节数组形式写入该变量。 |
5981| length | 表示value的长度,该值可通过getSize获取。 |
5982
5983**返回:**
5984
5985返回操作是否成功,出错时返回对应的错误码。
5986
5987**参见:**
5988
5989[OH_Cursor](_o_h___cursor.md).
5990
5991
5992### getColumnCount
5993
5994```
5995int(*getColumnCount) (OH_Cursor *cursor, int *count)
5996```
5997
5998**描述**
5999
6000函数指针,获取结果集中的列数。
6001
6002**起始版本:** 10
6003
6004**参数:**
6005
6006| 名称 | 描述 |
6007| -------- | -------- |
6008| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6009| count | 该参数是输出参数,结果集中的列数会写入该变量。 |
6010
6011**返回:**
6012
6013返回操作是否成功,出错时返回对应的错误码。
6014
6015**参见:**
6016
6017[OH_Cursor](_o_h___cursor.md).
6018
6019
6020### getColumnIndex
6021
6022```
6023int(*getColumnIndex) (OH_Cursor *cursor, const char *name, int *columnIndex)
6024```
6025
6026**描述**
6027
6028函数指针,根据指定的列名获取列索引。
6029
6030**起始版本:** 10
6031
6032**参数:**
6033
6034| 名称 | 描述 |
6035| -------- | -------- |
6036| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6037| name | 表示结果集中指定列的名称。 |
6038| columnIndex | 该参数是输出参数,结果集中指定列的索引会写入该变量。 |
6039
6040**返回:**
6041
6042返回操作是否成功,出错时返回对应的错误码。
6043
6044**参见:**
6045
6046[OH_Cursor](_o_h___cursor.md).
6047
6048
6049### getColumnName
6050
6051```
6052int(*getColumnName) (OH_Cursor *cursor, int32_t columnIndex, char *name, int length)
6053```
6054
6055**描述**
6056
6057函数指针,根据指定的列索引获取列名。
6058
6059**起始版本:** 10
6060
6061**参数:**
6062
6063| 名称 | 描述 |
6064| -------- | -------- |
6065| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6066| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
6067| name | 该参数是输出参数,结果集中指定列的名称会写入该变量。 |
6068| length | 表示列名的长度。 |
6069
6070**返回:**
6071
6072返回操作是否成功,出错时返回对应的错误码。
6073
6074**参见:**
6075
6076[OH_Cursor](_o_h___cursor.md).
6077
6078
6079### getColumnType
6080
6081```
6082int(*getColumnType) (OH_Cursor *cursor, int32_t columnIndex, OH_ColumnType *columnType)
6083```
6084
6085**描述**
6086
6087函数指针,根据指定的列索引获取列类型。
6088
6089**起始版本:** 10
6090
6091**参数:**
6092
6093| 名称 | 描述 |
6094| -------- | -------- |
6095| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6096| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
6097| columnType | 该参数是输出参数,结果集中指定列的数据类型[OH_ColumnType](#oh_columntype)会写入该变量。 |
6098
6099**返回:**
6100
6101返回操作是否成功,出错时返回对应的错误码。
6102
6103**参见:**
6104
6105[OH_Cursor](_o_h___cursor.md), [OH_ColumnType](#oh_columntype).
6106
6107
6108### getInt64
6109
6110```
6111int(*getInt64) (OH_Cursor *cursor, int32_t columnIndex, int64_t *value)
6112```
6113
6114**描述**
6115
6116函数指针,以int64_t形式获取当前行中指定列的值。
6117
6118**起始版本:** 10
6119
6120**参数:**
6121
6122| 名称 | 描述 |
6123| -------- | -------- |
6124| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6125| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
6126| value | 该参数是输出参数,结果集中指定列的值会以int64_t形式写入该变量。 |
6127
6128**返回:**
6129
6130返回操作是否成功,出错时返回对应的错误码。
6131
6132**参见:**
6133
6134[OH_Cursor](_o_h___cursor.md).
6135
6136
6137### getReal
6138
6139```
6140int(*getReal) (OH_Cursor *cursor, int32_t columnIndex, double *value)
6141```
6142
6143**描述**
6144
6145函数指针,以double形式获取当前行中指定列的值。
6146
6147**起始版本:** 10
6148
6149**参数:**
6150
6151| 名称 | 描述 |
6152| -------- | -------- |
6153| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6154| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
6155| value | 该参数是输出参数,结果集中指定列的值会以double形式写入该变量。 |
6156
6157**返回:**
6158
6159返回操作是否成功,出错时返回对应的错误码。
6160
6161**参见:**
6162
6163[OH_Cursor](_o_h___cursor.md).
6164
6165
6166### getRowCount
6167
6168```
6169int(*getRowCount) (OH_Cursor *cursor, int *count)
6170```
6171
6172**描述**
6173
6174函数指针,获取结果集中的行数。
6175
6176**起始版本:** 10
6177
6178**参数:**
6179
6180| 名称 | 描述 |
6181| -------- | -------- |
6182| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6183| count | 该参数是输出参数,结果集中的行数会写入该变量。 |
6184
6185**返回:**
6186
6187返回操作是否成功,出错时返回对应的错误码。
6188
6189**参见:**
6190
6191[OH_Cursor](_o_h___cursor.md).
6192
6193
6194### getSize
6195
6196```
6197int(*getSize) (OH_Cursor *cursor, int32_t columnIndex, size_t *size)
6198```
6199
6200**描述**
6201
6202函数指针,当结果集中列的数据类型是BLOB或者TEXT时,获取其值所需的内存。
6203
6204**起始版本:** 10
6205
6206**参数:**
6207
6208| 名称 | 描述 |
6209| -------- | -------- |
6210| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6211| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
6212| size | 该参数是输出参数,BLOB或者TEXT数据所需内存大小会写入该变量。 |
6213
6214**返回:**
6215
6216返回操作是否成功,出错时返回对应的错误码。
6217
6218**参见:**
6219
6220[OH_Cursor](_o_h___cursor.md).
6221
6222
6223### getText
6224
6225```
6226int(*getText) (OH_Cursor *cursor, int32_t columnIndex, char *value, int length)
6227```
6228
6229**描述**
6230
6231函数指针,以字符串形式获取当前行中指定列的值。
6232
6233**起始版本:** 10
6234
6235**参数:**
6236
6237| 名称 | 描述 |
6238| -------- | -------- |
6239| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6240| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
6241| value | 该参数是输出参数,结果集中指定列的值会以字符串形式写入该变量。 |
6242| length | 表示value的长度,该值可通过getSize获取。 |
6243
6244**返回:**
6245
6246返回操作是否成功,出错时返回对应的错误码。
6247
6248**参见:**
6249
6250[OH_Cursor](_o_h___cursor.md).
6251
6252
6253### goToNextRow
6254
6255```
6256int(*goToNextRow) (OH_Cursor *cursor)
6257```
6258
6259**描述**
6260
6261函数指针,转到结果集的下一行。
6262
6263**起始版本:** 10
6264
6265**参数:**
6266
6267| 名称 | 描述 |
6268| -------- | -------- |
6269| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6270
6271**返回:**
6272
6273返回操作是否成功,出错时返回对应的错误码。
6274
6275**参见:**
6276
6277[OH_Cursor](_o_h___cursor.md).
6278
6279
6280### greaterThan
6281
6282```
6283OH_Predicates *(*greaterThan) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
6284```
6285
6286**描述**
6287
6288函数指针,配置谓词以匹配数据字段为field且值大于指定值valueObject的字段。
6289
6290该方法等同于SQL语句中的“&gt;”。
6291
6292**起始版本:** 10
6293
6294**参数:**
6295
6296| 名称 | 描述 |
6297| -------- | -------- |
6298| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6299| field | 数据库表中的列名。 |
6300| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
6301
6302**返回:**
6303
6304返回与指定字段匹配的谓词。
6305
6306**参见:**
6307
6308[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
6309
6310
6311### greaterThanOrEqualTo
6312
6313```
6314OH_Predicates *(*greaterThanOrEqualTo) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
6315```
6316
6317**描述**
6318
6319函数指针,配置谓词以匹配数据字段为field且值大于或等于指定值valueObject的字段。
6320
6321该方法等同于SQL语句中的“&gt;=”。
6322
6323**起始版本:** 10
6324
6325**参数:**
6326
6327| 名称 | 描述 |
6328| -------- | -------- |
6329| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6330| field | 数据库表中的列名。 |
6331| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
6332
6333**返回:**
6334
6335返回与指定字段匹配的谓词。
6336
6337**参见:**
6338
6339[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
6340
6341
6342### groupBy
6343
6344```
6345OH_Predicates *(*groupBy) (OH_Predicates *predicates, char const *const *fields, int length)
6346```
6347
6348**描述**
6349
6350函数指针,配置R谓词按指定列分组查询结果。
6351
6352该方法等同于SQL语句中的“GROUP BY”。
6353
6354**起始版本:** 10
6355
6356**参数:**
6357
6358| 名称 | 描述 |
6359| -------- | -------- |
6360| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6361| fields | 指定分组依赖的列名。 |
6362| length | 表示fields数值的长度。 |
6363
6364**返回:**
6365
6366返回分组查询列的谓词。
6367
6368**参见:**
6369
6370[OH_Predicates](_o_h___predicates.md).
6371
6372
6373### id [1/5]
6374
6375```
6376int64_t OH_Cursor::id
6377```
6378
6379**描述**
6380
6381OH_Cursor结构体的唯一标识符。
6382
6383
6384### id [2/5]
6385
6386```
6387int64_t OH_Predicates::id
6388```
6389
6390**描述**
6391
6392OH_Predicates结构体的唯一标识符。
6393
6394
6395### id [3/5]
6396
6397```
6398int64_t OH_VObject::id
6399```
6400
6401**描述**
6402
6403OH_VObject结构体的唯一标识符。
6404
6405
6406### id [4/5]
6407
6408```
6409int64_t OH_VBucket::id
6410```
6411
6412**描述**
6413
6414OH_VBucket结构体的唯一标识符。
6415
6416
6417### id [5/5]
6418
6419```
6420int64_t OH_Rdb_Store::id
6421```
6422
6423**描述**
6424
6425OH_Rdb_Store结构体的唯一标识符。
6426
6427
6428### in
6429
6430```
6431OH_Predicates *(*in) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
6432```
6433
6434**描述**
6435
6436函数指针,配置谓词以匹配数据字段为field且值在给定范围内的指定字段。
6437
6438该方法等同于SQL语句中的“IN”。
6439
6440**起始版本:** 10
6441
6442**参数:**
6443
6444| 名称 | 描述 |
6445| -------- | -------- |
6446| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6447| field | 表示数据库表中的列名。 |
6448| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
6449
6450**返回:**
6451
6452返回与指定字段匹配的谓词。
6453
6454**参见:**
6455
6456[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
6457
6458
6459### inserted
6460
6461```
6462Rdb_KeyInfo Rdb_ChangeInfo::inserted
6463```
6464
6465**描述**
6466
6467记录插入数据的位置,如果该表的主键是string类型,该值是主键的值,否则该值表示插入数据的行号。
6468
6469
6470### integer
6471
6472```
6473uint64_t Rdb_KeyInfo::Rdb_KeyData::integer
6474```
6475
6476**描述**
6477
6478存放uint64_t类型的数据。
6479
6480
6481### isAutoSync
6482
6483```
6484bool Rdb_DistributedConfig::isAutoSync
6485```
6486
6487**描述**
6488
6489表示该表是否支持自动同步。
6490
6491
6492### isEncrypt
6493
6494```
6495bool OH_Rdb_Config::isEncrypt
6496```
6497
6498**描述**
6499
6500指定数据库是否加密。
6501
6502
6503### isNotNull
6504
6505```
6506OH_Predicates *(*isNotNull) (OH_Predicates *predicates, const char *field)
6507```
6508
6509**描述**
6510
6511函数指针,配置谓词以匹配值不为null的指定字段。
6512
6513该方法等同于SQL语句中的“IS NOT NULL”。
6514
6515**起始版本:** 10
6516
6517**参数:**
6518
6519| 名称 | 描述 |
6520| -------- | -------- |
6521| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6522| field | 数据库表中的列名。 |
6523
6524**返回:**
6525
6526返回与指定字段匹配的谓词。
6527
6528**参见:**
6529
6530[OH_Predicates](_o_h___predicates.md).
6531
6532
6533### isNull [1/2]
6534
6535```
6536int(*isNull) (OH_Cursor *cursor, int32_t columnIndex, bool *isNull)
6537```
6538
6539**描述**
6540
6541函数指针,检查当前行中指定列的值是否为null。
6542
6543**起始版本:** 10
6544
6545**参数:**
6546
6547| 名称 | 描述 |
6548| -------- | -------- |
6549| cursor | 表示指向[OH_Cursor](_o_h___cursor.md)实例的指针。 |
6550| columnIndex | 表示结果集中指定列的索引,索引值从0开始。 |
6551| isNull | 该参数是输出参数,如果当前行中指定列的值为null,该值为true,否则为false。 |
6552
6553**返回:**
6554
6555返回操作是否成功,出错时返回对应的错误码。
6556
6557**参见:**
6558
6559[OH_Cursor](_o_h___cursor.md).
6560
6561
6562### isNull [2/2]
6563
6564```
6565OH_Predicates *(*isNull) (OH_Predicates *predicates, const char *field)
6566```
6567
6568**描述**
6569
6570函数指针,配置谓词以匹配值为null的字段。
6571
6572该方法等同于SQL语句中的“IS NULL”。
6573
6574**起始版本:** 10
6575
6576**参数:**
6577
6578| 名称 | 描述 |
6579| -------- | -------- |
6580| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6581| field | 数据库表中的列名。 |
6582
6583**返回:**
6584
6585返回与指定字段匹配的谓词。
6586
6587**参见:**
6588
6589[OH_Predicates](_o_h___predicates.md).
6590
6591
6592### lessThan
6593
6594```
6595OH_Predicates *(*lessThan) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
6596```
6597
6598**描述**
6599
6600函数指针,配置谓词以匹配数据字段为field且值小于指定值valueObject的字段。
6601
6602该方法等同于SQL语句中的“&lt;”。
6603
6604**起始版本:** 10
6605
6606**参数:**
6607
6608| 名称 | 描述 |
6609| -------- | -------- |
6610| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6611| field | 数据库表中的列名。 |
6612| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
6613
6614**返回:**
6615
6616返回与指定字段匹配的谓词。
6617
6618**参见:**
6619
6620[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
6621
6622
6623### lessThanOrEqualTo
6624
6625```
6626OH_Predicates *(*lessThanOrEqualTo) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
6627```
6628
6629**描述**
6630
6631函数指针,配置谓词以匹配数据字段为field且值小于或等于指定值valueObject的字段。
6632
6633该方法等同于SQL语句中的“&lt;=”。
6634
6635**起始版本:** 10
6636
6637**参数:**
6638
6639| 名称 | 描述 |
6640| -------- | -------- |
6641| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6642| field | 数据库表中的列名。 |
6643| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
6644
6645**返回:**
6646
6647返回与指定字段匹配的谓词。
6648
6649**参见:**
6650
6651[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
6652
6653
6654### like
6655
6656```
6657OH_Predicates *(*like) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
6658```
6659
6660**描述**
6661
6662函数指针,配置谓词以匹配数据字段为field且值类似于指定字符串的字段。
6663
6664该方法等同于SQL语句中的“LIKE”。
6665
6666**起始版本:** 10
6667
6668**参数:**
6669
6670| 名称 | 描述 |
6671| -------- | -------- |
6672| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6673| field | 数据库表中的列名。 |
6674| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
6675
6676**返回:**
6677
6678返回与指定字段匹配的谓词。
6679
6680**参见:**
6681
6682[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
6683
6684
6685### limit
6686
6687```
6688OH_Predicates *(*limit) (OH_Predicates *predicates, unsigned int value)
6689```
6690
6691**描述**
6692
6693函数指针,设置最大数据记录数的谓词。
6694
6695该方法等同于SQL语句中的“LIMIT”。
6696
6697**起始版本:** 10
6698
6699**参数:**
6700
6701| 名称 | 描述 |
6702| -------- | -------- |
6703| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6704| value | 表示最大数据记录数。 |
6705
6706**返回:**
6707
6708返回可用于设置最大数据记录数的谓词。
6709
6710**参见:**
6711
6712[OH_Predicates](_o_h___predicates.md).
6713
6714
6715### moduleName
6716
6717```
6718const char* OH_Rdb_Config::moduleName
6719```
6720
6721**描述**
6722
6723应用模块名。
6724
6725
6726### notBetween
6727
6728```
6729OH_Predicates *(*notBetween) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
6730```
6731
6732**描述**
6733
6734函数指针,将谓词配置为匹配数据字段为field且其值超出给定范围内的指定字段。
6735
6736该方法等同于SQL语句中的“NOT BETWEEN”。
6737
6738**起始版本:** 10
6739
6740**参数:**
6741
6742| 名称 | 描述 |
6743| -------- | -------- |
6744| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6745| field | 数据库表中的列名。 |
6746| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
6747
6748**返回:**
6749
6750返回与指定字段匹配的谓词。
6751
6752**参见:**
6753
6754[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
6755
6756
6757### notEqualTo
6758
6759```
6760OH_Predicates *(*notEqualTo) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
6761```
6762
6763**描述**
6764
6765函数指针,配置谓词以匹配数据字段不等于指定值的字段。
6766
6767该方法等同于SQL语句中的“!=”。
6768
6769**起始版本:** 10
6770
6771**参数:**
6772
6773| 名称 | 描述 |
6774| -------- | -------- |
6775| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6776| field | 数据库表中的列名。 |
6777| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
6778
6779**返回:**
6780
6781返回与指定字段匹配的谓词。
6782
6783**参见:**
6784
6785[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
6786
6787
6788### notIn
6789
6790```
6791OH_Predicates *(*notIn) (OH_Predicates *predicates, const char *field, OH_VObject *valueObject)
6792```
6793
6794**描述**
6795
6796函数指针,配置谓词以匹配数据字段为field且值超出给定范围内的指定字段。
6797
6798该方法等同于SQL语句中的“NOT IN”。
6799
6800**起始版本:** 10
6801
6802**参数:**
6803
6804| 名称 | 描述 |
6805| -------- | -------- |
6806| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6807| field | 表示数据库表中的列名。 |
6808| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针,指示要与谓词匹配的值。 |
6809
6810**返回:**
6811
6812返回与指定字段匹配的谓词。
6813
6814**参见:**
6815
6816[OH_Predicates](_o_h___predicates.md), [OH_VObject](_o_h___v_object.md).
6817
6818
6819### offset
6820
6821```
6822OH_Predicates *(*offset) (OH_Predicates *predicates, unsigned int rowOffset)
6823```
6824
6825**描述**
6826
6827函数指针,配置谓词以指定返回结果的起始位置。
6828
6829该方法等同于SQL语句中的“OFFSET”。
6830
6831**起始版本:** 10
6832
6833**参数:**
6834
6835| 名称 | 描述 |
6836| -------- | -------- |
6837| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6838| rowOffset | 返回结果的起始位置,取值为正整数。 |
6839
6840**返回:**
6841
6842返回具有指定返回结果起始位置的谓词。
6843
6844**参见:**
6845
6846[OH_Predicates](_o_h___predicates.md).
6847
6848
6849### orderBy
6850
6851```
6852OH_Predicates *(*orderBy) (OH_Predicates *predicates, const char *field, OH_OrderType type)
6853```
6854
6855**描述**
6856
6857函数指针,配置谓词以匹配其值按升序或降序排序的列。
6858
6859该方法等同于SQL语句中的“ORDER BY”。
6860
6861**起始版本:** 10
6862
6863**参数:**
6864
6865| 名称 | 描述 |
6866| -------- | -------- |
6867| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6868| field | 数据库表中的列名。 |
6869| type | 表示排序类型 [OH_OrderType](#oh_ordertype). |
6870
6871**返回:**
6872
6873返回与指定字段匹配的谓词。
6874
6875**参见:**
6876
6877[OH_Predicates](_o_h___predicates.md), [OH_OrderType](#oh_ordertype).
6878
6879
6880### orOperate
6881
6882```
6883OH_Predicates *(*orOperate) (OH_Predicates *predicates)
6884```
6885
6886**描述**
6887
6888函数指针,将或条件添加到谓词中。
6889
6890该方法等同于SQL语句中的“OR”。
6891
6892**起始版本:** 10
6893
6894**参数:**
6895
6896| 名称 | 描述 |
6897| -------- | -------- |
6898| predicates | 表示指向[OH_Predicates](_o_h___predicates.md)实例的指针。 |
6899
6900**返回:**
6901
6902返回带有或条件的谓词。
6903
6904**参见:**
6905
6906[OH_Predicates](_o_h___predicates.md).
6907
6908
6909### putBlob
6910
6911```
6912int(*putBlob) (OH_VBucket *bucket, const char *field, const uint8_t *value, uint32_t size)
6913```
6914
6915**描述**
6916
6917将const uint8_t \*值放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。
6918
6919**起始版本:** 10
6920
6921**参数:**
6922
6923| 名称 | 描述 |
6924| -------- | -------- |
6925| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
6926| field | 数据库表中的列名。 |
6927| value | 数据库表中指定列名对应的值。 |
6928| size | 表示value的长度。 |
6929
6930**返回:**
6931
6932返回操作是否成功,出错时返回对应的错误码。
6933
6934**参见:**
6935
6936[OH_VBucket](_o_h___v_bucket.md).
6937
6938
6939### putDouble
6940
6941```
6942int(*putDouble) (OH_VObject *valueObject, double *value, uint32_t count)
6943```
6944
6945**描述**
6946
6947将double类型的单个参数或者数组转换为[OH_VObject](_o_h___v_object.md)类型的值。
6948
6949**起始版本:** 10
6950
6951**参数:**
6952
6953| 名称 | 描述 |
6954| -------- | -------- |
6955| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针。 |
6956| value | 表示指向double类型的单个参数或者数组的指针。 |
6957| count | 如果value是指向单个数值的指针,则count = 1;如果value是指向数组的指针,则count是数组的长度。 |
6958
6959**返回:**
6960
6961返回操作是否成功,出错时返回对应的错误码。
6962
6963**参见:**
6964
6965[OH_VObject](_o_h___v_object.md).
6966
6967
6968### putInt64 [1/2]
6969
6970```
6971int(*putInt64) (OH_VBucket *bucket, const char *field, int64_t value)
6972```
6973
6974**描述**
6975
6976将int64_t值放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。
6977
6978**起始版本:** 10
6979
6980**参数:**
6981
6982| 名称 | 描述 |
6983| -------- | -------- |
6984| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
6985| field | 数据库表中的列名。 |
6986| value | 数据库表中指定列名对应的值。 |
6987
6988**返回:**
6989
6990返回操作是否成功,出错时返回对应的错误码。
6991
6992**参见:**
6993
6994[OH_VBucket](_o_h___v_bucket.md).
6995
6996
6997### putInt64 [2/2]
6998
6999```
7000int(*putInt64) (OH_VObject *valueObject, int64_t *value, uint32_t count)
7001```
7002
7003**描述**
7004
7005将int64类型的单个参数或者数组转换为[OH_VObject](_o_h___v_object.md)类型的值。
7006
7007**起始版本:** 10
7008
7009**参数:**
7010
7011| 名称 | 描述 |
7012| -------- | -------- |
7013| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针。 |
7014| value | 表示指向int64_t类型的单个参数或者数组的指针。 |
7015| count | 如果value是指向单个数值的指针,则count = 1;如果value是指向数组的指针,则count是数组的长度。 |
7016
7017**返回:**
7018
7019返回操作是否成功,出错时返回对应的错误码。
7020
7021**参见:**
7022
7023[OH_VObject](_o_h___v_object.md).
7024
7025
7026### putNull
7027
7028```
7029int(*putNull) (OH_VBucket *bucket, const char *field)
7030```
7031
7032**描述**
7033
7034将NULL值放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。
7035
7036**起始版本:** 10
7037
7038**参数:**
7039
7040| 名称 | 描述 |
7041| -------- | -------- |
7042| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
7043| field | 数据库表中的列名。 |
7044
7045**返回:**
7046
7047返回操作是否成功,出错时返回对应的错误码。
7048
7049**参见:**
7050
7051[OH_VBucket](_o_h___v_bucket.md).
7052
7053
7054### putReal
7055
7056```
7057int(*putReal) (OH_VBucket *bucket, const char *field, double value)
7058```
7059
7060**描述**
7061
7062将double值放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。
7063
7064**起始版本:** 10
7065
7066**参数:**
7067
7068| 名称 | 描述 |
7069| -------- | -------- |
7070| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
7071| field | 数据库表中的列名。 |
7072| value | 数据库表中指定列名对应的值。 |
7073
7074**返回:**
7075
7076返回操作是否成功,出错时返回对应的错误码。
7077
7078**参见:**
7079
7080[OH_VBucket](_o_h___v_bucket.md).
7081
7082
7083### putText [1/2]
7084
7085```
7086int(*putText) (OH_VBucket *bucket, const char *field, const char *value)
7087```
7088
7089**描述**
7090
7091将char\*值放入给定列名的[OH_VBucket](_o_h___v_bucket.md)对象中。
7092
7093**起始版本:** 10
7094
7095**参数:**
7096
7097| 名称 | 描述 |
7098| -------- | -------- |
7099| bucket | 表示指向[OH_VBucket](_o_h___v_bucket.md)实例的指针。 |
7100| field | 数据库表中的列名。 |
7101| value | 数据库表中指定列名对应的值。 |
7102
7103**返回:**
7104
7105返回操作是否成功,出错时返回对应的错误码。
7106
7107**参见:**
7108
7109[OH_VBucket](_o_h___v_bucket.md).
7110
7111
7112### putText [2/2]
7113
7114```
7115int(*putText) (OH_VObject *valueObject, const char *value)
7116```
7117
7118**描述**
7119
7120将char \*类型的字符数组转换为[OH_VObject](_o_h___v_object.md)类型的值。
7121
7122**起始版本:** 10
7123
7124**参数:**
7125
7126| 名称 | 描述 |
7127| -------- | -------- |
7128| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针。 |
7129| value | 表示字符数组参数。 |
7130
7131**返回:**
7132
7133返回操作是否成功,出错时返回对应的错误码。
7134
7135**参见:**
7136
7137[OH_VObject](_o_h___v_object.md).
7138
7139
7140### putTexts
7141
7142```
7143int(*putTexts) (OH_VObject *valueObject, const char **value, uint32_t count)
7144```
7145
7146**描述**
7147
7148将char \*类型的字符串数组转换为[OH_VObject](_o_h___v_object.md)类型的值。
7149
7150**起始版本:** 10
7151
7152**参数:**
7153
7154| 名称 | 描述 |
7155| -------- | -------- |
7156| valueObject | 表示指向[OH_VObject](_o_h___v_object.md)实例的指针。 |
7157| value | 表示字符串数组参数。 |
7158| count | 表示字符串数组参数value的长度。 |
7159
7160**返回:**
7161
7162返回操作是否成功,出错时返回对应的错误码。
7163
7164**参见:**
7165
7166[OH_VObject](_o_h___v_object.md).
7167
7168
7169### real
7170
7171```
7172double Rdb_KeyInfo::Rdb_KeyData::real
7173```
7174
7175**描述**
7176
7177存放double类型的数据。
7178
7179
7180### remained
7181
7182```
7183int Rdb_Statistic::remained
7184```
7185
7186**描述**
7187
7188表示数据库表中端云同步剩余未执行的行数。
7189
7190
7191### schedule
7192
7193```
7194int Rdb_ProgressDetails::schedule
7195```
7196
7197**描述**
7198
7199表示端云同步过程。
7200
7201
7202### securityLevel
7203
7204```
7205int OH_Rdb_Config::securityLevel
7206```
7207
7208**描述**
7209
7210设置数据库安全级别[OH_Rdb_SecurityLevel](#oh_rdb_securitylevel)。
7211
7212
7213### selfSize
7214
7215```
7216int OH_Rdb_Config::selfSize
7217```
7218
7219**描述**
7220
7221该结构体的大小。
7222
7223
7224### storeName
7225
7226```
7227const char* OH_Rdb_Config::storeName
7228```
7229
7230**描述**
7231
7232数据库名称。
7233
7234
7235### successful
7236
7237```
7238int Rdb_Statistic::successful
7239```
7240
7241**描述**
7242
7243表示数据库表中端云同步成功的行数。
7244
7245
7246### table
7247
7248```
7249const char* Rdb_TableDetails::table
7250```
7251
7252**描述**
7253
7254数据库表名。
7255
7256
7257### tableLength
7258
7259```
7260int32_t Rdb_ProgressDetails::tableLength
7261```
7262
7263**描述**
7264
7265表示端云同步的表的数量。
7266
7267
7268### tableName
7269
7270```
7271const char* Rdb_ChangeInfo::tableName
7272```
7273
7274**描述**
7275
7276表示发生变化的表的名称。
7277
7278
7279### text
7280
7281```
7282const char* Rdb_KeyInfo::Rdb_KeyData::text
7283```
7284
7285**描述**
7286
7287存放char \*类型的数据。
7288
7289
7290### total
7291
7292```
7293int Rdb_Statistic::total
7294```
7295
7296**描述**
7297
7298表示数据库表中需要端云同步的总行数。
7299
7300
7301### type
7302
7303```
7304int Rdb_KeyInfo::type
7305```
7306
7307**描述**
7308
7309表示主键的类型[OH_ColumnType](#oh_columntype)。
7310
7311
7312### updated
7313
7314```
7315Rdb_KeyInfo Rdb_ChangeInfo::updated
7316```
7317
7318**描述**
7319
7320记录更新数据的位置,如果该表的主键是string类型,该值是主键的值,否则该值表示更新数据的行号。
7321
7322
7323### upload
7324
7325```
7326Rdb_Statistic Rdb_TableDetails::upload
7327```
7328
7329**描述**
7330
7331表示数据库表中端云同步上传过程的统计信息。
7332
7333
7334### version [1/3]
7335
7336```
7337int Rdb_DistributedConfig::version
7338```
7339
7340**描述**
7341
7342用于唯一标识Rdb_DistributedConfig结构的版本。
7343
7344
7345### version [2/3]
7346
7347```
7348int Rdb_ChangeInfo::version
7349```
7350
7351**描述**
7352
7353用于唯一标识Rdb_DistributedConfig结构的版本。
7354
7355
7356### version [3/3]
7357
7358```
7359int Rdb_ProgressDetails::version
7360```
7361
7362**描述**
7363
7364用于唯一标识OH_TableDetails结构的版本。