1# 分布式数据管理子系统Changelog
2
3## cl.distributeddatamgr.1 新增错误码
4
5针对分布式数据管理子系统relationalStore的API存在错误码笼统不清晰的问题,从API12开始作以下变更:
6将14800000错误码进行分裂,分裂之后,原有14800000仅表示系统错误,将sql执行异常、内部状态异常和错误地使用接口分裂出来,具体如下:
7
8- 新增错误码:
9     * 14800014 - Already closed.
10     * 14800017 - Config changed.
11     * 14800018 - No data meets the condition.
12     * 14800019 - The SQL must be a query statement.
13     * 14800021 - SQLite: Generic error.
14     * 14800022 - SQLite: Callback routine requested an abort.
15     * 14800023 - SQLite: Access permission denied.
16     * 14800024 - SQLite: The database file is locked.
17     * 14800025 - SQLite: A table in the database is locked.
18     * 14800026 - SQLite: The database is out of memory.
19     * 14800027 - SQLite: Attempt to write a readonly database.
20     * 14800028 - SQLite: Some kind of disk I/O error occurred.
21     * 14800029 - SQLite: The database is full.
22     * 14800030 - SQLite: Unable to open the database file.
23     * 14800031 - SQLite: TEXT or BLOB exceeds size limit.
24     * 14800032 - SQLite: Abort due to constraint violation.
25     * 14800033 - SQLite: Data type mismatch.
26     * 14800034 - SQLite: Library used incorrectly.
27
28     变更后的错误码详细介绍请参见[关系型数据库错误码](../../../application-dev/reference//apis-arkdata/errorcode-data-rdb.md)。
29
30**变更影响**
31
32影响API12版本的ArkTS接口,新增错误码,可提高问题定位效率,不涉及适配问题。
33
34**关键接口/组件变更**
35
36以下接口涉及新增错误码:
37  - interface ResultSet
38    - getColumnIndex(columnName: string): number;
39    - getColumnName(columnIndex: number): string;
40    - goTo(offset: number): boolean;
41    - goToRow(position: number): boolean;
42    - goToFirstRow(): boolean;
43    - goToLastRow(): boolean;
44    - goToNextRow(): boolean;
45    - goToPreviousRow(): boolean;
46    - getBlob(columnIndex: number): Uint8Array;
47    - getString(columnIndex: number): string;
48    - getLong(columnIndex: number): number;
49    - getDouble(columnIndex: number): number;
50    - getAsset(columnIndex: number): Asset;
51    - getAssets(columnIndex: number): Assets;
52    - getValue(columnIndex: number): ValueType;
53    - getFloat32Array(columnIndex: number): Float32Array;
54    - getRow(): ValuesBucket;
55    - isColumnNull(columnIndex: number): boolean;
56    - close(): void;
57  - interface RdbStore
58    - version: number;
59    - insert(table: string, values: ValuesBucket, callback: AsyncCallback<number>): void;
60    - insert(table: string, values: ValuesBucket, conflict: ConflictResolution, callback: AsyncCallback<number>): void;
61    - insert(table: string, values: ValuesBucket): Promise<number>;
62    - insert(table: string, values: ValuesBucket, conflict: ConflictResolution): Promise<number>;
63    - insertSync(table: string, values: ValuesBucket, conflict?: ConflictResolution): number;
64    - batchInsert(table: string, values: Array<ValuesBucket>, callback: AsyncCallback<number>): void;
65    - batchInsert(table: string, values: Array<ValuesBucket>): Promise<number>;
66    - batchInsertSync(table: string, values: Array<ValuesBucket>): number;
67    - update(values: ValuesBucket, predicates: RdbPredicates, callback: AsyncCallback<number>): void;
68    - update(
69        values: ValuesBucket,
70        predicates: RdbPredicates,
71        conflict: ConflictResolution,
72        callback: AsyncCallback<number>
73      ): void;
74    - update(values: ValuesBucket, predicates: RdbPredicates): Promise<number>;
75    - update(values: ValuesBucket, predicates: RdbPredicates, conflict: ConflictResolution): Promise<number>;
76    - updateSync(values: ValuesBucket, predicates: RdbPredicates, conflict?: ConflictResolution): number;
77    - update(
78        table: string,
79        values: ValuesBucket,
80        predicates: dataSharePredicates.DataSharePredicates,
81        callback: AsyncCallback<number>
82      ): void;
83    - update(table: string, values: ValuesBucket, predicates: dataSharePredicates.DataSharePredicates): Promise<number>;
84    - delete(predicates: RdbPredicates, callback: AsyncCallback<number>): void;
85    - delete(predicates: RdbPredicates): Promise<number>;
86    - deleteSync(predicates: RdbPredicates): number;
87    - delete(table: string, predicates: dataSharePredicates.DataSharePredicates, callback: AsyncCallback<number>): void;
88    - delete(table: string, predicates: dataSharePredicates.DataSharePredicates): Promise<number>;
89    - query(predicates: RdbPredicates, callback: AsyncCallback<ResultSet>): void;
90    - query(predicates: RdbPredicates, columns: Array<string>, callback: AsyncCallback<ResultSet>): void;
91    - query(predicates: RdbPredicates, columns?: Array<string>): Promise<ResultSet>;
92    - query(table: string, predicates: dataSharePredicates.DataSharePredicates, callback: AsyncCallback<ResultSet>): void;
93    - query(
94        table: string,
95        predicates: dataSharePredicates.DataSharePredicates,
96        columns: Array<string>,
97        callback: AsyncCallback<ResultSet>
98      ): void;
99    - query(
100        table: string,
101        predicates: dataSharePredicates.DataSharePredicates,
102        columns?: Array<string>
103      ): Promise<ResultSet>;
104    - querySync(predicates: RdbPredicates, columns?: Array<string>): ResultSet;
105    - querySql(sql: string, callback: AsyncCallback<ResultSet>): void;
106    - querySql(sql: string, bindArgs: Array<ValueType>, callback: AsyncCallback<ResultSet>): void;
107    - querySql(sql: string, bindArgs?: Array<ValueType>): Promise<ResultSet>;
108    - querySqlSync(sql: string, bindArgs?: Array<ValueType>): ResultSet;
109    - getModifyTime(table: string, columnName: string, primaryKeys: PRIKeyType[]): Promise<ModifyTime>;
110    - getModifyTime(
111        table: string,
112        columnName: string,
113        primaryKeys: PRIKeyType[],
114        callback: AsyncCallback<ModifyTime>
115      ): void;
116    - cleanDirtyData(table: string, cursor: number, callback: AsyncCallback<void>): void;
117    - cleanDirtyData(table: string, callback: AsyncCallback<void>): void;
118    - cleanDirtyData(table: string, cursor?: number): Promise<void>;
119    - querySharingResource(predicates: RdbPredicates, columns?: Array<string>): Promise<ResultSet>;
120    - querySharingResource(predicates: RdbPredicates, callback: AsyncCallback<ResultSet>): void;
121    - querySharingResource(predicates: RdbPredicates, columns: Array<string>, callback: AsyncCallback<ResultSet>): void;
122    - executeSql(sql: string, callback: AsyncCallback<void>): void;
123    - executeSql(sql: string, bindArgs: Array<ValueType>, callback: AsyncCallback<void>): void;
124    - executeSql(sql: string, bindArgs?: Array<ValueType>): Promise<void>;
125    - execute(sql: string, args?: Array<ValueType>): Promise<ValueType>;
126    - execute(sql: string, txId: number, args?: Array<ValueType>): Promise<ValueType>;
127    - executeSync(sql: string, args?: Array<ValueType>): ValueType;
128    - beginTransaction(): void;
129    - beginTrans(): Promise<number>;
130    - commit(): void;
131    - commit(txId : number): Promise<void>;
132    - rollBack(): void;
133    - rollback(txId : number): Promise<void>;
134    - backup(destName: string, callback: AsyncCallback<void>): void;
135    - backup(destName: string): Promise<void>;
136    - restore(srcName: string, callback: AsyncCallback<void>): void;
137    - restore(srcName: string): Promise<void>;
138    - setDistributedTables(tables: Array<string>, callback: AsyncCallback<void>): void;
139    - setDistributedTables(tables: Array<string>): Promise<void>;
140    - setDistributedTables(tables: Array<string>, type: DistributedType, callback: AsyncCallback<void>): void;
141    - setDistributedTables(
142        tables: Array<string>,
143        type: DistributedType,
144        config: DistributedConfig,
145        callback: AsyncCallback<void>
146      ): void;
147    - setDistributedTables(tables: Array<string>, type?: DistributedType, config?: DistributedConfig): Promise<void>;
148    - obtainDistributedTableName(device: string, table: string, callback: AsyncCallback<string>): void;
149    - obtainDistributedTableName(device: string, table: string): Promise<string>;
150    - sync(mode: SyncMode, predicates: RdbPredicates, callback: AsyncCallback<Array<[string, number]>>): void;
151    - sync(mode: SyncMode, predicates: RdbPredicates): Promise<Array<[string, number]>>;
152    - cloudSync(mode: SyncMode, progress: Callback<ProgressDetails>, callback: AsyncCallback<void>): void;
153    - cloudSync(mode: SyncMode, progress: Callback<ProgressDetails>): Promise<void>;
154    - cloudSync(
155        mode: SyncMode,
156        tables: string[],
157        progress: Callback<ProgressDetails>,
158        callback: AsyncCallback<void>
159      ): void;
160    - cloudSync(mode: SyncMode, tables: string[], progress: Callback<ProgressDetails>): Promise<void>;
161    - cloudSync(
162        mode: SyncMode,
163        predicates: RdbPredicates,
164        progress: Callback<ProgressDetails>,
165        callback: AsyncCallback<void>
166      ): void;
167    - cloudSync(mode: SyncMode, predicates: RdbPredicates, progress: Callback<ProgressDetails>): Promise<void>;
168    - remoteQuery(
169        device: string,
170        table: string,
171        predicates: RdbPredicates,
172        columns: Array<string>,
173        callback: AsyncCallback<ResultSet>
174      ): void;
175    - remoteQuery(device: string, table: string, predicates: RdbPredicates, columns: Array<string>): Promise<ResultSet>;
176    - on(event: 'dataChange', type: SubscribeType, observer: Callback<Array<string>>): void;
177    - on(event: 'dataChange', type: SubscribeType, observer: Callback<Array<string>> | Callback<Array<ChangeInfo>>): void;
178    - on(event: string, interProcess: boolean, observer: Callback<void>): void;
179    - on(event: 'autoSyncProgress', progress: Callback<ProgressDetails>): void;
180    - off(event: 'dataChange', type: SubscribeType, observer: Callback<Array<string>>): void;
181    - off(
182        event: 'dataChange',
183        type: SubscribeType,
184        observer?: Callback<Array<string>> | Callback<Array<ChangeInfo>>
185      ): void;
186    - off(event: string, interProcess: boolean, observer?: Callback<void>): void;
187    - off(event: 'autoSyncProgress', progress?: Callback<ProgressDetails>): void;
188    - emit(event: string): void;
189    - attach(fullPath: string, attachName: string, waitTime?: number) : Promise<number>;
190    - attach(context: Context, config: StoreConfig, attachName: string, waitTime?: number) : Promise<number>;
191    - detach(attachName: string, waitTime?: number) : Promise<number>;
192    - lockRow(predicates: RdbPredicates): Promise<void>;
193    - unlockRow(predicates: RdbPredicates): Promise<void>;
194    - queryLockedRow(predicates: RdbPredicates, columns?: Array<string>): Promise<ResultSet>;
195    - on(event: 'autoSyncProgress', progress: Callback<ProgressDetails>): void;
196  - function getRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback<RdbStore>): void;
197  - function getRdbStore(context: Context, config: StoreConfig): Promise<RdbStore>;
198  - function deleteRdbStore(context: Context, config: StoreConfig): Promise<void>;
199