diff --git a/zh-cn/application-dev/database/database-relational-guidelines.md b/zh-cn/application-dev/database/database-relational-guidelines.md
index 7c2cb97f3eab54bb3e8db5f746d32ab408474306..1ad02f9ad5aff7278910260bd21bfe9b3c282c4b 100644
--- a/zh-cn/application-dev/database/database-relational-guidelines.md
+++ b/zh-cn/application-dev/database/database-relational-guidelines.md
@@ -7,7 +7,7 @@
## 接口说明
-以下是关系型数据库的常用接口说明,大部分为异步接口。异步接口均有callback和Promise两种返回形式,下表均以Promise形式为例,更多接口及使用方式请见[关系型数据库](../reference/apis/js-apis-data-rdb.md)。
+以下是关系型数据库的常用接口说明,大部分为异步接口。异步接口均有callback和Promise两种返回形式,下表均以Promise形式为例,更多接口及使用方式请见[关系型数据库](../reference/apis/js-apis-data-relationalStore.md)。
### 数据库的创建和删除
@@ -17,8 +17,8 @@
| 接口名 | 描述 |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
-| getRdbStoreV9(context: Context, config: StoreConfigV9, version: number): Promise<RdbStoreV9> | 获得一个相关的RdbStoreV9,操作关系型数据库,用户可以根据自己的需求配置RdbStoreV9的参数,然后通过RdbStoreV9调用相关接口可以执行相关的数据操作,使用Promise异步回调。
-context:应用程序或功能的上下文。
-config:与此RDB存储相关的数据库配置。
-version:数据库版本。目前暂不支持通过version自动识别数据库升级降级操作,只能由开发者自行维护。 |
-| deleteRdbStoreV9(context: Context, name: string): Promise<void> | 使用指定的数据库文件配置删除数据库,使用Promise异步回调。
-context:应用程序或功能的上下文。
-name:数据库名称。 |
+| getRdbStore(context: Context, config: StoreConfig): Promise<RdbStore> | 获得一个相关的RdbStore,操作关系型数据库,用户可以根据自己的需求配置RdbStore的参数,然后通过RdbStore调用相关接口可以执行相关的数据操作,使用Promise异步回调。
-context:应用上下文。
-config:与此RDB存储相关的数据库配置。 |
+| deleteRdbStore(context: Context, name: string): Promise<void> | 使用指定的数据库文件配置删除数据库,使用Promise异步回调。
-context:应用上下文。
-name:数据库名称。 |
### 数据库的增删改查
@@ -33,29 +33,29 @@
| 类名 | 接口名 | 描述 |
| ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
- | RdbStoreV9 | insert(table: string, values: ValuesBucket): Promise<number> | 向目标表中插入一行数据,使用Promise异步回调。
如果操作成功,返回行ID;否则返回-1。
-table:指定的目标表名。
-values:表示要插入到表中的数据行。 |
+ | RdbStore | insert(table: string, values: ValuesBucket): Promise<number> | 向目标表中插入一行数据,使用Promise异步回调。
如果操作成功,返回行ID;否则返回-1。
-table:指定的目标表名。
-values:表示要插入到表中的数据行。 |
- **更新**
- 调用更新接口,传入要更新的数据,并通过RdbPredicatesV9指定更新条件。该接口的返回值表示更新操作影响的行数。如果更新失败,则返回0。
+ 调用更新接口,传入要更新的数据,并通过RdbPredicates指定更新条件。该接口的返回值表示更新操作影响的行数。如果更新失败,则返回0。
**表3** 数据库更新API
| 类名 | 接口名 | 描述 |
| ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
- | RdbStoreV9 | update(values: ValuesBucket, predicates: RdbPredicatesV9): Promise<number> | 根据RdbPredicatesV9的指定实例对象更新数据库中的数据,使用Promise异步回调。
返回受影响的行数。
-values:以ValuesBucket存储的要更新的数据。
-predicates:表示RdbPredicatesV9的实例对象指定的更新条件。 |
+ | RdbStore | update(values: ValuesBucket, predicates: RdbPredicates): Promise<number> | 根据RdbPredicates的指定实例对象更新数据库中的数据,使用Promise异步回调。
返回受影响的行数。
-values:以ValuesBucket存储的要更新的数据。
-predicates:表示RdbPredicates的实例对象指定的更新条件。 |
- **删除**
- 调用删除接口,通过RdbPredicatesV9指定删除条件。该接口的返回值表示删除的数据行数,可根据此值判断是否删除成功。如果删除失败,则返回0。
+ 调用删除接口,通过RdbPredicates指定删除条件。该接口的返回值表示删除的数据行数,可根据此值判断是否删除成功。如果删除失败,则返回0。
**表4** 数据库删除API
| 类名 | 接口名 | 描述 |
| ---------- | ---------------------------------------------------------- | ------------------------------------------------------------ |
- | RdbStoreV9 | delete(predicates: RdbPredicatesV9): Promise<number> | 根据RdbPredicatesV9的指定实例对象从数据库中删除数据,使用Promise异步回调。
返回受影响的行数。
-predicates:RdbPredicatesV9的实例对象指定的删除条件。 |
+ | RdbStore | delete(predicates: RdbPredicates): Promise<number> | 根据RdbPredicates的指定实例对象从数据库中删除数据,使用Promise异步回调。
返回受影响的行数。
-predicates:RdbPredicates的实例对象指定的删除条件。 |
- **查询**
@@ -66,35 +66,34 @@
**表5** 数据库查询API
-
-| 类名 | 接口名 | 描述 |
-| ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| RdbStoreV9 | query(predicates: RdbPredicatesV9, columns?: Array<string>): Promise<ResultSetV9> | 根据指定条件查询数据库中的数据,使用Promise异步回调。
-predicates:表示RdbPredicatesV9的实例对象指定的查询条件。
-columns:表示要查询的列。如果值为空,则查询应用于所有列。 |
-| RdbStoreV9 | querySql(sql: string, bindArgs?: Array<ValueType>): Promise<ResultSetV9> | 根据指定SQL语句查询数据库中的数据,使用Promise异步回调。
-sql:指定要查询的SQL语句。
-bindArgs:SQL语句中参数的值。 |
-| RdbStoreV9 | remoteQuery(device: string, table: string, predicates: RdbPredicatesV9, columns: Array<string>): Promise<ResultSetV9> | 根据指定条件查询指定远程设备数据库中的数据。使用Promise异步回调。
-device:指定远程查询的设备networkId。
-table:指定远程查询的表名。
-predicates:表示RdbPredicatesV9的实例对象,指定查询的条件。
-columns:表示要查询的列。如果值为空,则查询应用于所有列。 |
+ | 类名 | 接口名 | 描述 |
+ | ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
+ | RdbStore | query(predicates: RdbPredicates, columns?: Array<string>): Promise<ResultSet> | 根据指定条件查询数据库中的数据,使用Promise异步回调。
-predicates:表示RdbPredicates的实例对象指定的查询条件。
-columns:表示要查询的列。如果值为空,则查询应用于所有列。 |
+ | RdbStore | querySql(sql: string, bindArgs?: Array<ValueType>): Promise<ResultSet> | 根据指定SQL语句查询数据库中的数据,使用Promise异步回调。
-sql:指定要查询的SQL语句。
-bindArgs:SQL语句中参数的值。 |
+ | RdbStore | remoteQuery(device: string, table: string, predicates: RdbPredicates, columns: Array<string>): Promise<ResultSet> | 根据指定条件查询指定远程设备数据库中的数据。使用Promise异步回调。
-device:指定远程查询的设备networkId。
-table:指定远程查询的表名。
-predicates:表示RdbPredicates的实例对象,指定查询的条件。
-columns:表示要查询的列。如果值为空,则查询应用于所有列。 |
### 数据库谓词的使用
-关系型数据库提供了用于设置数据库操作条件的谓词RdbPredicatesV9,该类确定RDB中条件表达式的值是true还是false。
+关系型数据库提供了用于设置数据库操作条件的谓词RdbPredicates,该类确定RDB中条件表达式的值是true还是false。
-以下列举几个常用谓词,更多谓词的使用请见[关系型数据库谓词](../reference/apis/js-apis-data-rdb.md#rdbpredicates)。
+以下列举几个常用谓词,更多谓词的使用请见[关系型数据库谓词](../reference/apis/js-apis-data-relationalStore.md#rdbpredicates)。
**表6** 数据库谓词API
| 类名 | 接口名 | 描述 |
| --------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| RdbPredicatesV9 | equalTo(field: string, value: ValueType): RdbPredicatesV9 | 配置谓词以匹配数据字段为ValueType且值等于指定值的字段。
-field:数据库表中的列名。
-value:指示要与谓词匹配的值。
-RdbPredicatesV9:返回与指定字段匹配的谓词。 |
-| RdbPredicatesV9 | notEqualTo(field: string, value: ValueType): RdbPredicatesV9 | 配置谓词以匹配数据字段为ValueType且值不等于指定值的字段。
-field:数据库表中的列名。
-value:指示要与谓词匹配的值。
-RdbPredicatesV9:返回与指定字段匹配的谓词。 |
-| RdbPredicatesV9 | or(): RdbPredicatesV9 | 将或条件添加到谓词中。
-RdbPredicatesV9:返回带有或条件的谓词。 |
-| RdbPredicatesV9 | and(): RdbPredicatesV9 | 向谓词添加和条件。
-RdbPredicatesV9:返回带有和条件的谓词。 |
-| RdbPredicatesV9 | contains(field: string, value: string): RdbPredicatesV9 | 配置谓词以匹配数据字段为String且value包含指定值的字段。
-field:数据库表中的列名。
-value:指示要与谓词匹配的值。
-RdbPredicatesV9:返回带有包含条件的谓词。 |
+| RdbPredicates | equalTo(field: string, value: ValueType): RdbPredicates | 配置谓词以匹配数据字段为ValueType且值等于指定值的字段。
-field:数据库表中的列名。
-value:指示要与谓词匹配的值。
-RdbPredicates:返回与指定字段匹配的谓词。 |
+| RdbPredicates | notEqualTo(field: string, value: ValueType): RdbPredicates | 配置谓词以匹配数据字段为ValueType且值不等于指定值的字段。
-field:数据库表中的列名。
-value:指示要与谓词匹配的值。
-RdbPredicates:返回与指定字段匹配的谓词。 |
+| RdbPredicates | or(): RdbPredicates | 将或条件添加到谓词中。
-RdbPredicates:返回带有或条件的谓词。 |
+| RdbPredicates | and(): RdbPredicates | 向谓词添加和条件。
-RdbPredicates:返回带有和条件的谓词。 |
+| RdbPredicates | contains(field: string, value: string): RdbPredicates | 配置谓词以匹配数据字段为String且value包含指定值的字段。
-field:数据库表中的列名。
-value:指示要与谓词匹配的值。
-RdbPredicates:返回带有包含条件的谓词。 |
### 查询结果集的使用
-关系型数据库提供了查询返回的结果集ResultSetV9,其指向查询结果中的一行数据,供用户对查询结果进行遍历和访问。
+关系型数据库提供了查询返回的结果集ResultSet,其指向查询结果中的一行数据,供用户对查询结果进行遍历和访问。
-更多结果集的接口使用,请见[结果集](../reference/apis/js-apis-data-resultset.md)。
+更多结果集的接口使用,请见[结果集](../reference/apis/js-apis-data-relationalStore.md#resultset)。
> **须知:**
> **结果集使用完后,请一定要调用close方法显式关闭。**
@@ -103,12 +102,12 @@
| 类名 | 接口名 | 描述 |
| ----------- | ---------------------------------------- | ------------------------------------------ |
-| ResultSetV9 | goToFirstRow(): boolean | 将结果集移动到第一行。 |
-| ResultSetV9 | getString(columnIndex: number): string | 获取当前行指定列的值,以String类型返回。 |
-| ResultSetV9 | getBlob(columnIndex: number): Uint8Array | 获取当前行指定列的值,以字节数组形式返回。 |
-| ResultSetV9 | getDouble(columnIndex: number): number | 获取当前行指定列的值,以double型返回。 |
-| ResultSetV9 | getLong(columnIndex: number): number | 获取当前行指定列的值,以Long形式返回。 |
-| ResultSetV9 | close(): void | 关闭结果集。 |
+| ResultSet | goToFirstRow(): boolean | 将结果集移动到第一行。 |
+| ResultSet | getString(columnIndex: number): string | 获取当前行指定列的值,以String类型返回。 |
+| ResultSet | getBlob(columnIndex: number): Uint8Array | 获取当前行指定列的值,以字节数组形式返回。 |
+| ResultSet | getDouble(columnIndex: number): number | 获取当前行指定列的值,以double型返回。 |
+| ResultSet | getLong(columnIndex: number): number | 获取当前行指定列的值,以Long形式返回。 |
+| ResultSet | close(): void | 关闭结果集。 |
@@ -116,7 +115,7 @@
> **说明:**
>
-> - 在使用RdbStoreV9的setDistributedTables、obtainDistributedTableName、sync、on、off接口时,需要请求相应的权限:ohos.permission.DISTRIBUTED_DATASYNC。
+> - 在使用RdbStore的setDistributedTables、obtainDistributedTableName、sync、on、off接口时,需要请求相应的权限:ohos.permission.DISTRIBUTED_DATASYNC。
> - 使用分布式列表前,需要先建立设备间组网,具体接口及使用可见[设备管理](../reference/apis/js-apis-device-manager.md)。
**设置分布式列表**
@@ -125,7 +124,7 @@
| 类名 | 接口名 | 描述 |
| ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| RdbStoreV9 | setDistributedTables(tables: Array\): Promise\ | 设置分布式列表,使用Promise异步回调。
-tables:要设置的分布式列表表名。 |
+| RdbStore | setDistributedTables(tables: Array\): Promise\ | 设置分布式列表,使用Promise异步回调。
-tables:要设置的分布式列表表名。 |
**根据本地表名获取指定远程设备的分布式表名**
@@ -135,7 +134,7 @@
| 类名 | 接口名 | 描述 |
| ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| RdbStoreV9 | obtainDistributedTableName(device: string, table: string): Promise\ | 根据本地表名获取指定远程设备的分布式表名。在查询远程设备数据库时,需要使用分布式表名,使用Promise异步回调。
-device:远程设备。
-table:本地表名。 |
+| RdbStore | obtainDistributedTableName(device: string, table: string): Promise\ | 根据本地表名获取指定远程设备的分布式表名。在查询远程设备数据库时,需要使用分布式表名,使用Promise异步回调。
-device:远程设备。
-table:本地表名。 |
**在设备之间同步数据**
@@ -143,7 +142,7 @@
| 类名 | 接口名 | 描述 |
| ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| RdbStoreV9 | sync(mode: SyncMode, predicates: RdbPredicatesV9): Promise\> | 在设备之间同步数据,使用Promise异步回调。
-mode:指同步模式。SYNC_MODE_PUSH 表示数据从本地设备推送到远程设备;SYNC_MODE_PULL 表示数据从远程设备拉至本地设备。
-predicates:约束同步数据和设备。
-string:设备ID;number:每个设备同步状态,0表示成功,其他值表示失败。 |
+| RdbStore | sync(mode: SyncMode, predicates: RdbPredicates): Promise\> | 在设备之间同步数据,使用Promise异步回调。
-mode:指同步模式。SYNC_MODE_PUSH 表示数据从本地设备推送到远程设备;SYNC_MODE_PULL 表示数据从远程设备拉至本地设备。
-predicates:约束同步数据和设备。
-string:设备ID;number:每个设备同步状态,0表示成功,其他值表示失败。 |
**注册数据库的观察者**
@@ -151,7 +150,7 @@
| 类名 | 接口名 | 描述 |
| ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| RdbStoreV9 | on(event: 'dataChange', type: SubscribeType, observer: Callback\>): void | 注册数据库的观察者。当分布式数据库中的数据发生更改时,将调用回调。
-type:订阅类型;SUBSCRIBE_TYPE_REMOTE 订阅远程数据更改。
-observer:指分布式数据库中数据更改事件的观察者。 |
+| RdbStore | on(event: 'dataChange', type: SubscribeType, observer: Callback\>): void | 注册数据库的观察者。当分布式数据库中的数据发生更改时,将调用回调。
-type:订阅类型;SUBSCRIBE_TYPE_REMOTE 订阅远程数据更改。
-observer:指分布式数据库中数据更改事件的观察者。 |
**从数据库中删除指定类型的指定观察者**
@@ -159,7 +158,7 @@
| 类名 | 接口名 | 描述 |
| ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| RdbStoreV9 | off(event:'dataChange', type: SubscribeType, observer: Callback\>): void; | 从数据库中删除指定类型的指定观察者,使用callback异步回调。
-type:订阅类型;SUBSCRIBE_TYPE_REMOTE 订阅远程数据更改。
-observer:指已注册的数据更改观察者。 |
+| RdbStore | off(event:'dataChange', type: SubscribeType, observer: Callback\>): void; | 从数据库中删除指定类型的指定观察者,使用callback异步回调。
-type:订阅类型;SUBSCRIBE_TYPE_REMOTE 订阅远程数据更改。
-observer:指已注册的数据更改观察者。 |
### 数据库的备份和恢复
@@ -169,7 +168,7 @@
| 类名 | 接口名 | 描述 |
| ---------- | --------------------------------------------- | ------------------------------------------------------------ |
-| RdbStoreV9 | backup(destName: string): Promise<void> | 以指定名称备份数据库,使用Promise异步回调。
-destName:指定数据库的备份文件名。 |
+| RdbStore | backup(destName: string): Promise<void> | 以指定名称备份数据库,使用Promise异步回调。
-destName:指定数据库的备份文件名。 |
**恢复**
@@ -177,17 +176,17 @@
| 类名 | 接口名 | 描述 |
| ---------- | --------------------------------------------- | ------------------------------------------------------------ |
-| RdbStoreV9 | restore(srcName: string): Promise<void> | 从指定的数据库备份文件恢复数据库,使用Promise异步回调。
-srcName:指定数据库的备份文件名。 |
+| RdbStore | restore(srcName: string): Promise<void> | 从指定的数据库备份文件恢复数据库,使用Promise异步回调。
-srcName:指定数据库的备份文件名。 |
-**事务**
+### 事务
**表15** 事务
| 类名 | 接口名 | 描述 |
| -------- | ----------------------- | --------------------------------- |
-| RdbStoreV9 | beginTransaction(): void | 在开始执行SQL语句之前,开始事务。 |
-| RdbStoreV9 | commit(): void | 提交已执行的SQL语句。 |
-| RdbStoreV9 | rollBack(): void | 回滚已经执行的SQL语句。 |
+| RdbStore | beginTransaction(): void | 在开始执行SQL语句之前,开始事务。 |
+| RdbStore | commit(): void | 提交已执行的SQL语句。 |
+| RdbStore | rollBack(): void | 回滚已经执行的SQL语句。 |
## 开发步骤
@@ -202,40 +201,51 @@
FA模型示例:
```js
- import data_rdb from '@ohos.data.rdb'
- // 获取context
+ import relationalStore from '@ohos.data.relationalStore'
import featureAbility from '@ohos.ability.featureAbility'
- let context = featureAbility.getContext()
- const CREATE_TABLE_TEST = "CREATE TABLE IF NOT EXISTS test (" + "id INTEGER PRIMARY KEY AUTOINCREMENT, " + "name TEXT NOT NULL, " + "age INTEGER, " + "salary REAL, " + "blobType BLOB)";
+ var store;
+
+ // 获取context
+ let context = featureAbility.getContext();
- const STORE_CONFIGV9 = { name: "RdbTest.db",
- securityLevel: data_rdb.SecurityLevel.S1}
- data_rdb.getRdbStoreV9(context, STORE_CONFIGV9, 1, function (err, rdbStoreV9) {
- rdbStoreV9.executeSql(CREATE_TABLE_TEST)
- console.info('create table done.')
+ const STORE_CONFIG = {
+ name: "RdbTest.db",
+ securityLevel: relationalStore.SecurityLevel.S1
+ };
+
+ relationalStore.getRdbStore(context, STORE_CONFIG, function (err, rdbStore) {
+ store = rdbStore;
+ if (err) {
+ console.error(`Get RdbStore failed, err: ${err}`);
+ return;
+ }
+ console.info(`Get RdbStore successfully.`);
})
```
Stage模型示例:
```ts
- import data_rdb from '@ohos.data.rdb'
- // 获取context
- import Ability from '@ohos.application.Ability'
- let context = null
- class MainAbility extends Ability {
+ import relationalStore from '@ohos.data.relationalStore'
+ import UIAbility from '@ohos.app.ability.UIAbility'
+
+ class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage) {
- context = this.context
+ var store;
+ const STORE_CONFIG = {
+ name: "RdbTest.db",
+ securityLevel: relationalStore.SecurityLevel.S1
+ };
+
+ relationalStore.getRdbStore(this.context, STORE_CONFIG, function (err, rdbStore) {
+ store = rdbStore;
+ if (err) {
+ console.error(`Get RdbStore failed, err: ${err}`);
+ return;
+ }
+ console.info(`Get RdbStore successfully.`);
+ })
}
}
-
- const CREATE_TABLE_TEST = "CREATE TABLE IF NOT EXISTS test (" + "id INTEGER PRIMARY KEY AUTOINCREMENT, " + "name TEXT NOT NULL, " + "age INTEGER, " + "salary REAL, " + "blobType BLOB)";
-
- const STORE_CONFIGV9 = { name: "rdbstore.db",
- securityLevel: data_rdb.SecurityLevel.S1}
- data_rdb.getRdbStoreV9(context, STORE_CONFIGV9, 1, function (err, rdbStoreV9) {
- rdbStoreV9.executeSql(CREATE_TABLE_TEST)
- console.info('create table done.')
- })
```
2. 插入数据。
@@ -247,9 +257,25 @@
示例代码如下:
```js
- var u8 = new Uint8Array([1, 2, 3])
- const valueBucket = { "name": "Tom", "age": 18, "salary": 100.5, "blobType": u8 }
- let insertPromise = rdbStoreV9.insert("test", valueBucket)
+ let u8 = new Uint8Array([1, 2, 3]);
+ const valueBucket = { "name": "Tom", "age": 18, "salary": 100.5, "blobType": u8 };
+ let insertPromise = store.insert("test", valueBucket);
+ ```
+
+ ```js
+ //使用事务插入数据
+ try {
+ store.beginTransaction();
+ let u8 = new Uint8Array([1, 2, 3]);
+ const valueBucket = { "name": "Tom", "age": 18, "salary": 100.5, "blobType": u8 };
+ let promise = store.insert("test", valueBucket);
+ promise.then(() => {
+ store.commit();
+ })
+ } catch (err) {
+ console.error(`Transaction failed, err: ${err}`);
+ store.rollBack();
+ }
```
3. 查询数据。
@@ -263,17 +289,17 @@
示例代码如下:
```js
- let predicatesV9 = new data_rdb.RdbPredicatesV9("test");
- predicatesV9.equalTo("name", "Tom")
- let promisequery = rdbStoreV9.query(predicatesV9)
- promisequery.then((resultSetV9) => {
- resultSetV9.goToFirstRow()
- const id = resultSetV9.getLong(resultSetV9.getColumnIndex("id"))
- const name = resultSetV9.getString(resultSetV9.getColumnIndex("name"))
- const age = resultSetV9.getLong(resultSetV9.getColumnIndex("age"))
- const salary = resultSetV9.getDouble(resultSetV9.getColumnIndex("salary"))
- const blobType = resultSetV9.getBlob(resultSetV9.getColumnIndex("blobType"))
- resultSetV9.close()
+ let predicates = new relationalStore.RdbPredicates("test");
+ predicates.equalTo("name", "Tom");
+ let promisequery = store.query(predicates);
+ promisequery.then((resultSet) => {
+ resultSet.goToFirstRow();
+ const id = resultSet.getLong(resultSet.getColumnIndex("id"));
+ const name = resultSet.getString(resultSet.getColumnIndex("name"));
+ const age = resultSet.getLong(resultSet.getColumnIndex("age"));
+ const salary = resultSet.getDouble(resultSet.getColumnIndex("salary"));
+ const blobType = resultSet.getBlob(resultSet.getColumnIndex("blobType"));
+ resultSet.close();
})
```
@@ -283,9 +309,9 @@
```json
"requestPermissions":
- {
- "name": "ohos.permission.DISTRIBUTED_DATASYNC"
- }
+ {
+ "name": "ohos.permission.DISTRIBUTED_DATASYNC"
+ }
```
(2) 获取应用权限。
@@ -299,13 +325,13 @@
```js
let context = featureAbility.getContext();
context.requestPermissionsFromUser(['ohos.permission.DISTRIBUTED_DATASYNC'], 666, function (result) {
- console.info(`result.requestCode=${result.requestCode}`)
+ console.info(`result.requestCode=${result.requestCode}`);
})
- let promise = rdbStoreV9.setDistributedTables(["test"])
+ let promise = store.setDistributedTables(["test"]);
promise.then(() => {
- console.info("setDistributedTables success.")
+ console.info(`setDistributedTables success.`);
}).catch((err) => {
- console.info("setDistributedTables failed.")
+ console.error(`setDistributedTables failed, ${err}`);
})
```
@@ -320,16 +346,16 @@
示例代码如下:
```js
- let predicateV9 = new data_rdb.RdbPredicatesV9('test')
- predicateV9.inDevices(['12345678abcde'])
- let promise = rdbStoreV9.sync(data_rdb.SyncMode.SYNC_MODE_PUSH, predicateV9)
+ let predicate = new relationalStore.RdbPredicates('test');
+ predicate.inDevices(['12345678abcde']);
+ let promise = store.sync(relationalStore.SyncMode.SYNC_MODE_PUSH, predicate);
promise.then((result) => {
- console.log('sync done.')
- for (let i = 0; i < result.length; i++) {
- console.log('device=' + result[i][0] + 'status=' + result[i][1])
- }
+ console.info(`sync done.`);
+ for (let i = 0; i < result.length; i++) {
+ console.info(`device=${result[i][0]}, status=${result[i][1]}`);
+ }
}).catch((err) => {
- console.log('sync failed')
+ console.error(`sync failed, err: ${err}`);
})
```
@@ -343,15 +369,15 @@
```js
function storeObserver(devices) {
- for (let i = 0; i < devices.length; i++) {
- console.log('device=' + device[i] + 'data changed')
- }
+ for (let i = 0; i < devices.length; i++) {
+ console.info(`device= ${device[i]} data changed`);
+ }
}
-
+
try {
- rdbStoreV9.on('dataChange', data_rdb.SubscribeType.SUBSCRIBE_TYPE_REMOTE, storeObserver)
+ store.on('dataChange', relationalStore.SubscribeType.SUBSCRIBE_TYPE_REMOTE, storeObserver);
} catch (err) {
- console.log('register observer failed')
+ console.error(`register observer failed, err: ${err}`);
}
```
@@ -364,62 +390,78 @@
示例代码如下:
```js
- let tableName = rdbStoreV9.obtainDistributedTableName(deviceId, "test");
- let resultSetV9 = rdbStoreV9.querySql("SELECT * FROM " + tableName)
+ import deviceManager from '@ohos.distributedHardware.deviceManager'
+
+ let deviceIds = [];
+ deviceManager.createDeviceManager('bundleName', (err, value) => {
+ if (!err) {
+ let devManager = value;
+ if (devManager != null) {
+ // 获取deviceIds
+ let devices = devManager.getTrustedDeviceListSync();
+ for (let i = 0; i < devices.length; i++) {
+ deviceIds[i] = devices[i].deviceId;
+ }
+ }
+ }
+ })
+
+ let tableName = store.obtainDistributedTableName(deviceIds[0], "test");
+ let resultSet = store.querySql("SELECT * FROM " + tableName);
```
8. 远程查询。
-
(1) 构造用于查询分布式表的谓词对象,指定组网内的远程分布式表名和设备。
(2) 调用结果集接口,返回查询结果。
示例代码如下:
-
- ```js
- let rdbPredicateV9 = new data_rdb.RdbPredicatesV9('employee')
- predicatesV9.greaterThan("id", 0)
- let promiseQuery = rdbStoreV9.remoteQuery('12345678abcde', 'employee', rdbPredicateV9)
- promiseQuery.then((resultSetV9) => {
- while (resultSetV9.goToNextRow()) {
- let idx = resultSetV9.getLong(0);
- let name = resultSetV9.getString(1);
- let age = resultSetV9.getLong(2);
- console.info(idx + " " + name + " " + age);
- }
- resultSetV9.close();
+
+ ```js
+ let rdbPredicate = new relationalStore.RdbPredicates('employee');
+ predicates.greaterThan("id", 0) ;
+ let promiseQuery = store.remoteQuery('12345678abcde', 'employee', rdbPredicate);
+ promiseQuery.then((resultSet) => {
+ while (resultSet.goToNextRow()) {
+ let idx = resultSet.getLong(0);
+ let name = resultSet.getString(1);
+ let age = resultSet.getLong(2);
+ console.info(`indx: ${idx}, name: ${name}, age: ${age}`);
+ }
+ resultSet.close();
}).catch((err) => {
- console.info("failed to remoteQuery, err: " + err)
+ console.error(`failed to remoteQuery, err: ${err}`);
})
- ```
-
+ ```
+
9. 数据库的备份和恢复。
(1) 调用数据库的备份接口,备份当前数据库文件。
- 示例代码如下:
+ 示例代码如下:
- ```js
- let promiseBackup = rdbStoreV9.backup("dbBackup.db")
+ ```js
+ let promiseBackup = store.backup("dbBackup.db");
promiseBackup.then(() => {
- console.info('Backup success.')
+ console.info(`Backup success.`);
}).catch((err) => {
- console.info('Backup failed, err: ' + err)
+ console.error(`Backup failed, err: ${err}`);
})
- ```
- (2) 调用数据库的恢复接口,从数据库的备份文件恢复数据库文件。
+ ```
- 示例代码如下:
+ (2) 调用数据库的恢复接口,从数据库的备份文件恢复数据库文件。
- ```js
- let promiseRestore = rdbStoreV9.restore("dbBackup.db")
+ 示例代码如下:
+
+ ```js
+ let promiseRestore = store.restore("dbBackup.db");
promiseRestore.then(() => {
- console.info('Restore success.')
+ console.info(`Restore success.`);
}).catch((err) => {
- console.info('Restore failed, err: ' + err)
+ console.error(`Restore failed, err: ${err}`);
})
- ```
+ ```
## 相关实例
针对关系型数据库开发,有以下相关实例可供参考:
diff --git a/zh-cn/application-dev/reference/apis/js-apis-data-relationalStore.md b/zh-cn/application-dev/reference/apis/js-apis-data-relationalStore.md
index 5989299983dc5d16b4a2061454ff57e9af5981b1..534ac2eb81515b5d5c7a04cb74da70b3d1b9ce04 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-data-relationalStore.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-data-relationalStore.md
@@ -15,10 +15,10 @@
## 导入模块
```js
-import data_rdb from '@ohos.data.relationalStore';
+import relationalStore from '@ohos.data.relationalStore'
```
-## data_rdb.getRdbStore
+## relationalStore.getRdbStore
getRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback<RdbStore>): void
@@ -48,51 +48,55 @@ getRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback<Rd
FA模型示例:
```js
-// 获取context
+
import featureAbility from '@ohos.ability.featureAbility'
-let context = featureAbility.getContext()
-// 获取context后调用getRdbStore
+var store;
+
+// 获取context
+let context = featureAbility.getContext();
+
const STORE_CONFIG = {
- name: "RdbTest.db",
- securityLevel: data_rdb.SecurityLevel.S1
-}
-data_rdb.getRdbStore(context, STORE_CONFIG, function (err, RdbStore) {
- if (err) {
- console.info("Get RdbStore failed, err: " + err)
- return
- }
- console.log("Get RdbStore successfully.")
+ name: "RdbTest.db",
+ securityLevel: relationalStore.SecurityLevel.S1
+};
+
+relationalStore.getRdbStore(context, STORE_CONFIG, function (err, rdbStore) {
+ store = rdbStore;
+ if (err) {
+ console.error(`Get RdbStore failed, err: ${err}`);
+ return;
+ }
+ console.info(`Get RdbStore successfully.`);
})
```
Stage模型示例:
```ts
-// 获取context
-import Ability from '@ohos.application.Ability'
-let context
-class MainAbility extends Ability{
- onWindowStageCreate(windowStage){
- context = this.context
- }
-}
-
-// 获取context后调用getRdbStore
-const STORE_CONFIG = {
- name: "RdbTest.db",
- securityLevel: data_rdb.SecurityLevel.S1
+import UIAbility from '@ohos.app.ability.UIAbility'
+
+class EntryAbility extends UIAbility {
+ onWindowStageCreate(windowStage) {
+ var store;
+ const STORE_CONFIG = {
+ name: "RdbTest.db",
+ securityLevel: relationalStore.SecurityLevel.S1
+ };
+
+ relationalStore.getRdbStore(this.context, STORE_CONFIG, function (err, rdbStore) {
+ store = rdbStore;
+ if (err) {
+ console.error(`Get RdbStore failed, err: ${err}`);
+ return;
+ }
+ console.info(`Get RdbStore successfully.`);
+ })
+ }
}
-data_rdb.getRdbStore(context, STORE_CONFIG, function (err, RdbStore) {
- if (err) {
- console.info("Get RdbStore failed, err: " + err)
- return
- }
- console.log("Get RdbStore successfully.")
-})
```
-## data_rdb.getRdbStore
+## relationalStore.getRdbStore
getRdbStore(context: Context, config: StoreConfig): Promise<RdbStore>
@@ -127,49 +131,52 @@ getRdbStore(context: Context, config: StoreConfig): Promise<RdbStore>
FA模型示例:
```js
-// 获取context
import featureAbility from '@ohos.ability.featureAbility'
-let context = featureAbility.getContext()
-// 获取context后调用getRdbStore
+var store;
+
+// 获取context
+let context = featureAbility.getContext();
+
const STORE_CONFIG = {
- name: "RdbTest.db",
- securityLevel: data_rdb.SecurityLevel.S1
-}
-let promise = data_rdb.getRdbStore(context, STORE_CONFIG);
+ name: "RdbTest.db",
+ securityLevel: relationalStore.SecurityLevel.S1
+};
+
+let promise = relationalStore.getRdbStore(context, STORE_CONFIG);
promise.then(async (rdbStore) => {
- console.log("Get RdbStore successfully.")
+ store = rdbStore;
+ console.info(`Get RdbStore successfully.`);
}).catch((err) => {
- console.log("Get RdbStore failed, err: " + err)
+ console.error(`Get RdbStore failed, err: ${err}`);
})
```
Stage模型示例:
```ts
-// 获取context
-import Ability from '@ohos.application.Ability'
-let context
-class MainAbility extends Ability{
- onWindowStageCreate(windowStage){
- context = this.context
- }
-}
-
-// 获取context后调用getRdbStore
-const STORE_CONFIG = {
- name: "RdbTest.db",
- securityLevel: data_rdb.SecurityLevel.S1
+import UIAbility from '@ohos.app.ability.UIAbility'
+
+class EntryAbility extends UIAbility {
+ onWindowStageCreate(windowStage) {
+ var store;
+ const STORE_CONFIG = {
+ name: "RdbTest.db",
+ securityLevel: relationalStore.SecurityLevel.S1
+ };
+
+ let promise = relationalStore.getRdbStore(this.context, STORE_CONFIG);
+ promise.then(async (rdbStore) => {
+ store = rdbStore;
+ console.info(`Get RdbStore successfully.`)
+ }).catch((err) => {
+ console.error(`Get RdbStore failed, err: ${err}`);
+ })
+ }
}
-let promise = data_rdb.getRdbStore(context, STORE_CONFIG);
-promise.then(async (rdbStore) => {
- console.log("Get RdbStore successfully.")
-}).catch((err) => {
- console.log("Get RdbStore failed, err: " + err)
-})
```
-## data_rdb.deleteRdbStore
+## relationalStore.deleteRdbStore
deleteRdbStore(context: Context, name: string, callback: AsyncCallback<void>): void
@@ -198,43 +205,39 @@ deleteRdbStore(context: Context, name: string, callback: AsyncCallback<void&g
FA模型示例:
```js
-// 获取context
import featureAbility from '@ohos.ability.featureAbility'
+
+// 获取context
let context = featureAbility.getContext()
-// 获取context后调用deleteRdbStore
-data_rdb.deleteRdbStore(context, "RdbTest.db", function (err) {
- if (err) {
- console.info("Delete RdbStore failed, err: " + err)
- return
- }
- console.log("Delete RdbStore successfully.")
+relationalStore.deleteRdbStore(context, "RdbTest.db", function (err) {
+ if (err) {
+ console.error(`Delete RdbStore failed, err: ${err}`);
+ return;
+ }
+ console.info(`Delete RdbStore successfully.`);
})
```
Stage模型示例:
```ts
-// 获取context
-import Ability from '@ohos.application.Ability'
-let context
-class MainAbility extends Ability{
- onWindowStageCreate(windowStage){
- context = this.context
- }
-}
+import UIAbility from '@ohos.app.ability.UIAbility'
-// 获取context后调用deleteRdbStore
-data_rdb.deleteRdbStore(context, "RdbTest.db", function (err) {
- if (err) {
- console.info("Delete RdbStore failed, err: " + err)
- return
- }
- console.log("Delete RdbStore successfully.")
-})
+class EntryAbility extends UIAbility {
+ onWindowStageCreate(windowStage){
+ relationalStore.deleteRdbStore(this.context, "RdbTest.db", function (err) {
+ if (err) {
+ console.error(`Delete RdbStore failed, err: ${err}`);
+ return;
+ }
+ console.info(`Delete RdbStore successfully.`);
+ })
+ }
+}
```
-## data_rdb.deleteRdbStore
+## relationalStore.deleteRdbStore
deleteRdbStore(context: Context, name: string): Promise<void>
@@ -268,38 +271,34 @@ deleteRdbStore(context: Context, name: string): Promise<void>
FA模型示例:
```js
-// 获取context
import featureAbility from '@ohos.ability.featureAbility'
-let context = featureAbility.getContext()
-// 获取context后调用deleteRdbStore
-let promise = data_rdb.deleteRdbStore(context, "RdbTest.db")
+// 获取context
+let context = featureAbility.getContext();
+
+let promise = relationalStore.deleteRdbStore(context, "RdbTest.db");
promise.then(()=>{
- console.log("Delete RdbStore successfully.")
+ console.info(`Delete RdbStore successfully.`);
}).catch((err) => {
- console.info("Delete RdbStore failed, err: " + err)
+ console.error(`Delete RdbStore failed, err: ${err}`);
})
```
Stage模型示例:
```ts
-// 获取context
-import Ability from '@ohos.application.Ability'
-let context
-class MainAbility extends Ability{
- onWindowStageCreate(windowStage){
- context = this.context
- }
+import UIAbility from '@ohos.app.ability.UIAbility'
+
+class EntryAbility extends UIAbility {
+ onWindowStageCreate(windowStage){
+ let promise = relationalStore.deleteRdbStore(this.context, "RdbTest.db");
+ promise.then(()=>{
+ console.info(`Delete RdbStore successfully.`);
+ }).catch((err) => {
+ console.error(`Delete RdbStore failed, err: ${err}`);
+ })
+ }
}
-
-// 获取context后调用deleteRdbStore
-let promise = data_rdb.deleteRdbStore(context, "RdbTest.db")
-promise.then(()=>{
- console.log("Delete RdbStore successfully.")
-}).catch((err) => {
- console.info("Delete RdbStore failed, err: " + err)
-})
```
## StoreConfig
@@ -391,7 +390,7 @@ constructor(name: string)
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
```
### inDevices
@@ -418,8 +417,8 @@ inDevices(devices: Array<string>): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.inDevices(['12345678abcde'])
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.inDevices(['12345678abcde']);
```
### inAllDevices
@@ -440,8 +439,8 @@ inAllDevices(): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.inAllDevices()
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.inAllDevices();
```
### equalTo
@@ -469,8 +468,8 @@ equalTo(field: string, value: ValueType): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "lisi")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "lisi");
```
@@ -499,8 +498,8 @@ notEqualTo(field: string, value: ValueType): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.notEqualTo("NAME", "lisi")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.notEqualTo("NAME", "lisi");
```
@@ -522,7 +521,7 @@ beginWrap(): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "lisi")
.beginWrap()
.equalTo("AGE", 18)
@@ -548,7 +547,7 @@ endWrap(): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "lisi")
.beginWrap()
.equalTo("AGE", 18)
@@ -574,7 +573,7 @@ or(): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Lisa")
.or()
.equalTo("NAME", "Rose")
@@ -597,7 +596,7 @@ and(): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Lisa")
.and()
.equalTo("SALARY", 200.5)
@@ -627,8 +626,8 @@ contains(field: string, value: string): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.contains("NAME", "os")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.contains("NAME", "os");
```
### beginsWith
@@ -655,8 +654,8 @@ beginsWith(field: string, value: string): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.beginsWith("NAME", "os")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.beginsWith("NAME", "os");
```
### endsWith
@@ -683,8 +682,8 @@ endsWith(field: string, value: string): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.endsWith("NAME", "se")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.endsWith("NAME", "se");
```
### isNull
@@ -710,8 +709,8 @@ isNull(field: string): RdbPredicates
**示例**:
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.isNull("NAME")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.isNull("NAME");
```
### isNotNull
@@ -737,8 +736,8 @@ isNotNull(field: string): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.isNotNull("NAME")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.isNotNull("NAME");
```
### like
@@ -765,8 +764,8 @@ like(field: string, value: string): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.like("NAME", "%os%")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.like("NAME", "%os%");
```
### glob
@@ -793,8 +792,8 @@ glob(field: string, value: string): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.glob("NAME", "?h*g")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.glob("NAME", "?h*g");
```
### between
@@ -822,8 +821,8 @@ between(field: string, low: ValueType, high: ValueType): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.between("AGE", 10, 50)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.between("AGE", 10, 50);
```
### notBetween
@@ -851,8 +850,8 @@ notBetween(field: string, low: ValueType, high: ValueType): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.notBetween("AGE", 10, 50)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.notBetween("AGE", 10, 50);
```
### greaterThan
@@ -879,8 +878,8 @@ greaterThan(field: string, value: ValueType): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.greaterThan("AGE", 18)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.greaterThan("AGE", 18);
```
### lessThan
@@ -907,8 +906,8 @@ lessThan(field: string, value: ValueType): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.lessThan("AGE", 20)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.lessThan("AGE", 20);
```
### greaterThanOrEqualTo
@@ -935,8 +934,8 @@ greaterThanOrEqualTo(field: string, value: ValueType): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.greaterThanOrEqualTo("AGE", 18)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.greaterThanOrEqualTo("AGE", 18);
```
### lessThanOrEqualTo
@@ -963,8 +962,8 @@ lessThanOrEqualTo(field: string, value: ValueType): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.lessThanOrEqualTo("AGE", 20)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.lessThanOrEqualTo("AGE", 20);
```
### orderByAsc
@@ -990,8 +989,8 @@ orderByAsc(field: string): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.orderByAsc("NAME")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.orderByAsc("NAME");
```
### orderByDesc
@@ -1017,8 +1016,8 @@ orderByDesc(field: string): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.orderByDesc("AGE")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.orderByDesc("AGE");
```
### distinct
@@ -1038,8 +1037,8 @@ distinct(): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "Rose").distinct()
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "Rose").distinct();
```
### limitAs
@@ -1065,8 +1064,8 @@ limitAs(value: number): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "Rose").limitAs(3)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "Rose").limitAs(3);
```
### offsetAs
@@ -1092,8 +1091,8 @@ offsetAs(rowOffset: number): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "Rose").offsetAs(3)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "Rose").offsetAs(3);
```
### groupBy
@@ -1119,8 +1118,8 @@ groupBy(fields: Array<string>): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.groupBy(["AGE", "NAME"])
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.groupBy(["AGE", "NAME"]);
```
### indexedBy
@@ -1147,8 +1146,8 @@ indexedBy(field: string): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.indexedBy("SALARY_INDEX")
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.indexedBy("SALARY_INDEX");
```
### in
@@ -1175,8 +1174,8 @@ in(field: string, value: Array<ValueType>): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.in("AGE", [18, 20])
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.in("AGE", [18, 20]);
```
### notIn
@@ -1203,8 +1202,8 @@ notIn(field: string, value: Array<ValueType>): RdbPredicates
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.notIn("NAME", ["Lisa", "Rose"])
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.notIn("NAME", ["Lisa", "Rose"]);
```
## RdbStore
@@ -1233,19 +1232,21 @@ insert(table: string, values: ValuesBucket, callback: AsyncCallback<number>
```js
const valueBucket = {
- "NAME": "Lisa",
- "AGE": 18,
- "SALARY": 100.5,
- "CODES": new Uint8Array([1, 2, 3, 4, 5]),
-}
-rdbStore.insert("EMPLOYEE", valueBucket, function (status, rowId) {
- if (status) {
- console.log("Insert is failed");
- return;
- }
- console.log("Insert is successful, rowId = " + rowId);
+ "NAME": "Lisa",
+ "AGE": 18,
+ "SALARY": 100.5,
+ "CODES": new Uint8Array([1, 2, 3, 4, 5]),
+};
+store.insert("EMPLOYEE", valueBucket, function (err, rowId) {
+ if (err) {
+ console.error(`Insert is failed, err: ${err}`);
+ return;
+ }
+ console.info(`Insert is successful, rowId = ${rowId}`);
})
```
+
+
### insert
insert(table: string, values: ValuesBucket):Promise<number>
@@ -1271,19 +1272,20 @@ insert(table: string, values: ValuesBucket):Promise<number>
```js
const valueBucket = {
- "NAME": "Lisa",
- "AGE": 18,
- "SALARY": 100.5,
- "CODES": new Uint8Array([1, 2, 3, 4, 5]),
-}
-let promise = rdbStore.insert("EMPLOYEE", valueBucket)
+ "NAME": "Lisa",
+ "AGE": 18,
+ "SALARY": 100.5,
+ "CODES": new Uint8Array([1, 2, 3, 4, 5]),
+};
+let promise = store.insert("EMPLOYEE", valueBucket);
promise.then((rowId) => {
- console.log("Insert is successful, rowId = " + rowId);
-}).catch((status) => {
- console.log("Insert is failed");
+ console.info(`Insert is successful, rowId = ${rowId}`);
+}).catch((err) => {
+ console.error(`Insert is failed, err: ${err}`);
})
```
+
### batchInsert
batchInsert(table: string, values: Array<ValuesBucket>, callback: AsyncCallback<number>):void
@@ -1304,31 +1306,31 @@ batchInsert(table: string, values: Array<ValuesBucket>, callback: AsyncCal
```js
const valueBucket1 = {
- "NAME": "Lisa",
- "AGE": 18,
- "SALARY": 100.5,
- "CODES": new Uint8Array([1, 2, 3, 4, 5])
-}
+ "NAME": "Lisa",
+ "AGE": 18,
+ "SALARY": 100.5,
+ "CODES": new Uint8Array([1, 2, 3, 4, 5])
+};
const valueBucket2 = {
- "NAME": "Jack",
- "AGE": 19,
- "SALARY": 101.5,
- "CODES": new Uint8Array([6, 7, 8, 9, 10])
-}
+ "NAME": "Jack",
+ "AGE": 19,
+ "SALARY": 101.5,
+ "CODES": new Uint8Array([6, 7, 8, 9, 10])
+};
const valueBucket3 = {
- "NAME": "Tom",
- "AGE": 20,
- "SALARY": 102.5,
- "CODES": new Uint8Array([11, 12, 13, 14, 15])
-}
+ "NAME": "Tom",
+ "AGE": 20,
+ "SALARY": 102.5,
+ "CODES": new Uint8Array([11, 12, 13, 14, 15])
+};
let valueBuckets = new Array(valueBucket1, valueBucket2, valueBucket3);
-rdbStore.batchInsert("EMPLOYEE", valueBuckets, function(status, insertNum) {
- if (status) {
- console.log("batchInsert is failed, status = " + status);
- return;
- }
- console.log("batchInsert is successful, the number of values that were inserted = " + insertNum);
+store.batchInsert("EMPLOYEE", valueBuckets, function(err, insertNum) {
+ if (err) {
+ console.error(`batchInsert is failed, err: ${err}`);
+ return;
+ }
+ console.info(`batchInsert is successful, the number of values that were inserted = ${insertNum}`);
})
```
@@ -1357,30 +1359,30 @@ batchInsert(table: string, values: Array<ValuesBucket>):Promise<number&
```js
const valueBucket1 = {
- "NAME": "Lisa",
- "AGE": 18,
- "SALARY": 100.5,
- "CODES": new Uint8Array([1, 2, 3, 4, 5])
-}
+ "NAME": "Lisa",
+ "AGE": 18,
+ "SALARY": 100.5,
+ "CODES": new Uint8Array([1, 2, 3, 4, 5])
+};
const valueBucket2 = {
- "NAME": "Jack",
- "AGE": 19,
- "SALARY": 101.5,
- "CODES": new Uint8Array([6, 7, 8, 9, 10])
-}
+ "NAME": "Jack",
+ "AGE": 19,
+ "SALARY": 101.5,
+ "CODES": new Uint8Array([6, 7, 8, 9, 10])
+};
const valueBucket3 = {
- "NAME": "Tom",
- "AGE": 20,
- "SALARY": 102.5,
- "CODES": new Uint8Array([11, 12, 13, 14, 15])
-}
+ "NAME": "Tom",
+ "AGE": 20,
+ "SALARY": 102.5,
+ "CODES": new Uint8Array([11, 12, 13, 14, 15])
+};
let valueBuckets = new Array(valueBucket1, valueBucket2, valueBucket3);
-let promise = rdbStore.batchInsert("EMPLOYEE", valueBuckets);
+let promise = store.batchInsert("EMPLOYEE", valueBuckets);
promise.then((insertNum) => {
- console.log("batchInsert is successful, the number of values that were inserted = " + insertNum);
-}).catch((status) => {
- console.log("batchInsert is failed, status = " + status);
+ console.info(`batchInsert is successful, the number of values that were inserted = ${insertNum}`);
+}).catch((err) => {
+ console.error(`batchInsert is failed, err: ${err}`);
})
```
@@ -1404,22 +1406,23 @@ update(values: ValuesBucket, predicates: RdbPredicates, callback: AsyncCallback&
```js
const valueBucket = {
- "NAME": "Rose",
- "AGE": 22,
- "SALARY": 200.5,
- "CODES": new Uint8Array([1, 2, 3, 4, 5]),
-}
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "Lisa")
-rdbStore.update(valueBucket, predicates, function (err, rows) {
- if (err) {
- console.info("Updated failed, err: " + err)
- return
- }
- console.log("Updated row count: " + rows)
+ "NAME": "Rose",
+ "AGE": 22,
+ "SALARY": 200.5,
+ "CODES": new Uint8Array([1, 2, 3, 4, 5]),
+};
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "Lisa");
+store.update(valueBucket, predicates, function (err, rows) {
+ if (err) {
+ console.error(`Updated failed, err: ${err}`);
+ return;
+ }
+ console.info(`Updated row count: ${rows}`);
})
```
+
### update
update(values: ValuesBucket, predicates: RdbPredicates):Promise<number>
@@ -1445,21 +1448,22 @@ update(values: ValuesBucket, predicates: RdbPredicates):Promise<number>
```js
const valueBucket = {
- "NAME": "Rose",
- "AGE": 22,
- "SALARY": 200.5,
- "CODES": new Uint8Array([1, 2, 3, 4, 5]),
-}
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "Lisa")
-let promise = rdbStore.update(valueBucket, predicates)
+ "NAME": "Rose",
+ "AGE": 22,
+ "SALARY": 200.5,
+ "CODES": new Uint8Array([1, 2, 3, 4, 5]),
+};
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "Lisa");
+let promise = store.update(valueBucket, predicates);
promise.then(async (rows) => {
- console.log("Updated row count: " + rows)
+ console.info(`Updated row count: ${rows}`);
}).catch((err) => {
- console.info("Updated failed, err: " + err)
+ console.error(`Updated failed, err: ${err}`);
})
```
+
### update
update(table: string, values: ValuesBucket, predicates: dataSharePredicates.DataSharePredicates, callback: AsyncCallback<number>):void
@@ -1488,15 +1492,15 @@ const valueBucket = {
"AGE": 22,
"SALARY": 200.5,
"CODES": new Uint8Array([1, 2, 3, 4, 5]),
-}
-let predicates = new dataSharePredicates.DataSharePredicates()
-predicates.equalTo("NAME", "Lisa")
-rdbStore.update("EMPLOYEE", valueBucket, predicates, function (err, rows) {
- if (err) {
- console.info("Updated failed, err: " + err)
- return
- }
- console.log("Updated row count: " + rows)
+};
+let predicates = new dataSharePredicates.DataSharePredicates();
+predicates.equalTo("NAME", "Lisa");
+store.update("EMPLOYEE", valueBucket, predicates, function (err, rows) {
+ if (err) {
+ console.error(`Updated failed, err: ${err}`);
+ return;
+ }
+ console.info(`Updated row count: ${rows}`);
})
```
@@ -1529,18 +1533,18 @@ update(table: string, values: ValuesBucket, predicates: dataSharePredicates.Data
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates'
const valueBucket = {
- "NAME": "Rose",
- "AGE": 22,
- "SALARY": 200.5,
- "CODES": new Uint8Array([1, 2, 3, 4, 5]),
-}
-let predicates = new dataSharePredicates.DataSharePredicates()
-predicates.equalTo("NAME", "Lisa")
-let promise = rdbStore.update("EMPLOYEE", valueBucket, predicates)
+ "NAME": "Rose",
+ "AGE": 22,
+ "SALARY": 200.5,
+ "CODES": new Uint8Array([1, 2, 3, 4, 5]),
+};
+let predicates = new dataSharePredicates.DataSharePredicates();
+predicates.equalTo("NAME", "Lisa");
+let promise = store.update("EMPLOYEE", valueBucket, predicates);
promise.then(async (rows) => {
- console.log("Updated row count: " + rows)
+ console.info(`Updated row count: ${rows}`);
}).catch((err) => {
- console.info("Updated failed, err: " + err)
+ console.error(`Updated failed, err: ${err}`);
})
```
@@ -1562,14 +1566,14 @@ delete(predicates: RdbPredicates, callback: AsyncCallback<number>):void
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "Lisa")
-rdbStore.delete(predicates, function (err, rows) {
- if (err) {
- console.info("Delete failed, err: " + err)
- return
- }
- console.log("Delete rows: " + rows)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "Lisa");
+store.delete(predicates, function (err, rows) {
+ if (err) {
+ console.error(`Delete failed, err: ${err}`);
+ return;
+ }
+ console.info(`Delete rows: ${rows}`);
})
```
@@ -1596,13 +1600,13 @@ delete(predicates: RdbPredicates):Promise<number>
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "Lisa")
-let promise = rdbStore.delete(predicates)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "Lisa");
+let promise = store.delete(predicates);
promise.then((rows) => {
- console.log("Delete rows: " + rows)
+ console.info(`Delete rows: ${rows}`);
}).catch((err) => {
- console.info("Delete failed, err: " + err)
+ console.error(`Delete failed, err: ${err}`);
})
```
@@ -1628,14 +1632,14 @@ delete(table: string, predicates: dataSharePredicates.DataSharePredicates, callb
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates'
-let predicates = new dataSharePredicates.DataSharePredicates()
-predicates.equalTo("NAME", "Lisa")
-rdbStore.delete("EMPLOYEE", predicates, function (err, rows) {
- if (err) {
- console.info("Delete failed, err: " + err)
- return
- }
- console.log("Delete rows: " + rows)
+let predicates = new dataSharePredicates.DataSharePredicates();
+predicates.equalTo("NAME", "Lisa");
+store.delete("EMPLOYEE", predicates, function (err, rows) {
+ if (err) {
+ console.error(`Delete failed, err: ${err}`);
+ return;
+ }
+ console.info(`Delete rows: ${rows}`);
})
```
@@ -1666,13 +1670,13 @@ delete(table: string, predicates: dataSharePredicates.DataSharePredicates):Promi
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates'
-let predicates = new dataSharePredicates.DataSharePredicates()
-predicates.equalTo("NAME", "Lisa")
-let promise = rdbStore.delete("EMPLOYEE", predicates)
+let predicates = new dataSharePredicates.DataSharePredicates();
+predicates.equalTo("NAME", "Lisa");
+let promise = store.delete("EMPLOYEE", predicates);
promise.then((rows) => {
- console.log("Delete rows: " + rows)
+ console.info(`Delete rows: ${rows}`);
}).catch((err) => {
- console.info("Delete failed, err: " + err)
+ console.error(`Delete failed, err: ${err}`);
})
```
@@ -1695,15 +1699,15 @@ query(predicates: RdbPredicates, columns: Array<string>, callback: AsyncCa
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "Rose")
-rdbStore.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"], function (err, resultSet) {
- if (err) {
- console.info("Query failed, err: " + err)
- return
- }
- console.log("ResultSet column names: " + resultSet.columnNames)
- console.log("ResultSet column count: " + resultSet.columnCount)
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "Rose");
+store.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"], function (err, resultSet) {
+ if (err) {
+ console.error(`Query failed, err: ${err}`);
+ return;
+ }
+ console.info(`ResultSet column names: ${resultSet.columnNames}`);
+ console.info(`ResultSet column count: ${resultSet.columnCount}`);
})
```
@@ -1731,14 +1735,14 @@ query(predicates: RdbPredicates, columns?: Array<string>):Promise<Resul
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates("EMPLOYEE")
-predicates.equalTo("NAME", "Rose")
-let promise = rdbStore.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"])
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+predicates.equalTo("NAME", "Rose");
+let promise = store.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- console.log("ResultSet column names: " + resultSet.columnNames)
- console.log("ResultSet column count: " + resultSet.columnCount)
+ console.info(`ResultSet column names: ${resultSet.columnNames}`);
+ console.info(`ResultSet column count: ${resultSet.columnCount}`);
}).catch((err) => {
- console.info("Query failed, err: " + err)
+ console.error(`Query failed, err: ${err}`);
})
```
@@ -1765,15 +1769,15 @@ query(table: string, predicates: dataSharePredicates.DataSharePredicates, column
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates'
-let predicates = new dataSharePredicates.DataSharePredicates()
-predicates.equalTo("NAME", "Rose")
-rdbStore.query("EMPLOYEE", predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"], function (err, resultSet) {
- if (err) {
- console.info("Query failed, err: " + err)
- return
- }
- console.log("ResultSet column names: " + resultSet.columnNames)
- console.log("ResultSet column count: " + resultSet.columnCount)
+let predicates = new dataSharePredicates.DataSharePredicates();
+predicates.equalTo("NAME", "Rose");
+store.query("EMPLOYEE", predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"], function (err, resultSet) {
+ if (err) {
+ console.error(`Query failed, err: ${err}`);
+ return;
+ }
+ console.info(`ResultSet column names: ${resultSet.columnNames}`);
+ console.info(`ResultSet column count: ${resultSet.columnCount}`);
})
```
@@ -1805,14 +1809,14 @@ query(table: string, predicates: dataSharePredicates.DataSharePredicates, column
```js
import dataSharePredicates from '@ohos.data.dataSharePredicates'
-let predicates = new dataSharePredicates.DataSharePredicates()
-predicates.equalTo("NAME", "Rose")
-let promise = rdbStore.query("EMPLOYEE", predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"])
+let predicates = new dataSharePredicates.DataSharePredicates();
+predicates.equalTo("NAME", "Rose");
+let promise = store.query("EMPLOYEE", predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- console.log("ResultSet column names: " + resultSet.columnNames)
- console.log("ResultSet column count: " + resultSet.columnCount)
+ console.info(`ResultSet column names: ${resultSet.columnNames}`);
+ console.info(`ResultSet column count: ${resultSet.columnCount}`);
}).catch((err) => {
- console.info("Query failed, err: " + err)
+ console.error(`Query failed, err: ${err}`);
})
```
@@ -1837,17 +1841,18 @@ remoteQuery(device: string, table: string, predicates: RdbPredicates, columns: A
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates('EMPLOYEE')
-predicates.greaterThan("id", 0)
-rdbStore.remoteQuery("deviceId", "EMPLOYEE", predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"],
- function(err, resultSet){
+let predicates = new relationalStore.RdbPredicates('EMPLOYEE');
+predicates.greaterThan("id", 0);
+store.remoteQuery("deviceId", "EMPLOYEE", predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"],
+ function(err, resultSet) {
if (err) {
- console.info("Failed to remoteQuery, err: " + err)
- return
+ console.error(`Failed to remoteQuery, err: ${err}`);
+ return;
}
- console.info("ResultSet column names: " + resultSet.columnNames)
- console.info("ResultSet column count: " + resultSet.columnCount)
-})
+ console.info(`ResultSet column names: ${resultSet.columnNames}`);
+ console.info(`ResultSet column count: ${resultSet.columnCount}`);
+ }
+)
```
### remoteQuery
@@ -1876,14 +1881,14 @@ remoteQuery(device: string, table: string, predicates: RdbPredicates, columns: A
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates('EMPLOYEE')
-predicates.greaterThan("id", 0)
-let promise = rdbStore.remoteQuery("deviceId", "EMPLOYEE", predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"])
+let predicates = new relationalStore.RdbPredicates('EMPLOYEE');
+predicates.greaterThan("id", 0);
+let promise = store.remoteQuery("deviceId", "EMPLOYEE", predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- console.info("ResultSet column names: " + resultSet.columnNames)
- console.info("ResultSet column count: " + resultSet.columnCount)
+ console.info(`ResultSet column names: ${resultSet.columnNames}`);
+ console.info(`ResultSet column count: ${resultSet.columnCount}`);
}).catch((err) => {
- console.info("Failed to remoteQuery , err: " + err)
+ console.error(`Failed to remoteQuery, err: ${err}`);
})
```
@@ -1906,13 +1911,13 @@ querySql(sql: string, bindArgs: Array<ValueType>, callback: AsyncCallback&
**示例:**
```js
-rdbStore.querySql("SELECT * FROM EMPLOYEE CROSS JOIN BOOK WHERE BOOK.NAME = ?", ['sanguo'], function (err, resultSet) {
- if (err) {
- console.info("Query failed, err: " + err)
- return
- }
- console.log("ResultSet column names: " + resultSet.columnNames)
- console.log("ResultSet column count: " + resultSet.columnCount)
+store.querySql("SELECT * FROM EMPLOYEE CROSS JOIN BOOK WHERE BOOK.NAME = ?", ['sanguo'], function (err, resultSet) {
+ if (err) {
+ console.error(`Query failed, err: ${err}`);
+ return;
+ }
+ console.info(`ResultSet column names: ${resultSet.columnNames}`);
+ console.info(`ResultSet column count: ${resultSet.columnCount}`);
})
```
@@ -1940,12 +1945,12 @@ querySql(sql: string, bindArgs?: Array<ValueType>):Promise<ResultSet>
**示例:**
```js
-let promise = rdbStore.querySql("SELECT * FROM EMPLOYEE CROSS JOIN BOOK WHERE BOOK.NAME = ?", ['sanguo'])
+let promise = store.querySql("SELECT * FROM EMPLOYEE CROSS JOIN BOOK WHERE BOOK.NAME = ?", ['sanguo']);
promise.then((resultSet) => {
- console.log("ResultSet column names: " + resultSet.columnNames)
- console.log("ResultSet column count: " + resultSet.columnCount)
+ console.info(`ResultSet column names: ${resultSet.columnNames}`);
+ console.info(`ResultSet column count: ${resultSet.columnCount}`);
}).catch((err) => {
- console.info("Query failed, err: " + err)
+ console.error(`Query failed, err: ${err}`);
})
```
@@ -1969,12 +1974,12 @@ executeSql(sql: string, bindArgs: Array<ValueType>, callback: AsyncCallbac
```js
const SQL_CREATE_TABLE = "CREATE TABLE IF NOT EXISTS EMPLOYEE (ID INTEGER PRIMARY KEY AUTOINCREMENT, NAME TEXT NOT NULL, AGE INTEGER, SALARY REAL, CODES BLOB)"
-rdbStore.executeSql(SQL_CREATE_TABLE, null, function(err) {
- if (err) {
- console.info("ExecuteSql failed, err: " + err)
- return
- }
- console.info('Create table done.')
+store.executeSql(SQL_CREATE_TABLE, null, function(err) {
+ if (err) {
+ console.error(`ExecuteSql failed, err: ${err}`);
+ return;
+ }
+ console.info(`Create table done.`);
})
```
@@ -2003,11 +2008,11 @@ executeSql(sql: string, bindArgs?: Array<ValueType>):Promise<void>
```js
const SQL_CREATE_TABLE = "CREATE TABLE IF NOT EXISTS EMPLOYEE (ID INTEGER PRIMARY KEY AUTOINCREMENT, NAME TEXT NOT NULL, AGE INTEGER, SALARY REAL, CODES BLOB)"
-let promise = rdbStore.executeSql(SQL_CREATE_TABLE)
+let promise = store.executeSql(SQL_CREATE_TABLE);
promise.then(() => {
- console.info('Create table done.')
+ console.info(`Create table done.`);
}).catch((err) => {
- console.info("ExecuteSql failed, err: " + err)
+ console.error(`ExecuteSql failed, err: ${err}`);
})
```
@@ -2023,19 +2028,25 @@ beginTransaction():void
```js
import featureAbility from '@ohos.ability.featureAbility'
-let context = featureAbility.getContext()
-const STORE_CONFIG = { name: "RdbTest.db",
- securityLevel: data_rdb.SecurityLevel.S1}
-data_rdb.getRdbStore(context, STORE_CONFIG, async function (err, rdbStore) {
- rdbStore.beginTransaction()
- const valueBucket = {
- "name": "lisi",
- "age": 18,
- "salary": 100.5,
- "blobType": new Uint8Array([1, 2, 3]),
- }
- await rdbStore.insert("test", valueBucket)
- rdbStore.commit()
+let context = featureAbility.getContext();
+const STORE_CONFIG = {
+ name: "RdbTest.db",
+ securityLevel: relationalStore.SecurityLevel.S1
+};
+relationalStore.getRdbStore(context, STORE_CONFIG, async function (err, store) {
+ if (err) {
+ console.error(`GetRdbStore failed, err: ${err}`);
+ return;
+ }
+ store.beginTransaction();
+ const valueBucket = {
+ "name": "lisi",
+ "age": 18,
+ "salary": 100.5,
+ "blobType": new Uint8Array([1, 2, 3]),
+ };
+ await store.insert("test", valueBucket);
+ store.commit();
})
```
@@ -2051,19 +2062,25 @@ commit():void
```js
import featureAbility from '@ohos.ability.featureAbility'
-let context = featureAbility.getContext()
-const STORE_CONFIG = { name: "RdbTest.db",
- securityLevel: data_rdb.SecurityLevel.S1}
-data_rdb.getRdbStore(context, STORE_CONFIG, async function (err, rdbStore) {
- rdbStore.beginTransaction()
- const valueBucket = {
- "name": "lisi",
- "age": 18,
- "salary": 100.5,
- "blobType": new Uint8Array([1, 2, 3]),
- }
- await rdbStore.insert("test", valueBucket)
- rdbStore.commit()
+let context = featureAbility.getContext();
+const STORE_CONFIG = {
+ name: "RdbTest.db",
+ securityLevel: relationalStore.SecurityLevel.S1
+};
+relationalStore.getRdbStore(context, STORE_CONFIG, async function (err, store) {
+ if (err) {
+ console.error(`GetRdbStore failed, err: ${err}`);
+ return;
+ }
+ store.beginTransaction();
+ const valueBucket = {
+ "name": "lisi",
+ "age": 18,
+ "salary": 100.5,
+ "blobType": new Uint8Array([1, 2, 3]),
+ };
+ await store.insert("test", valueBucket);
+ store.commit();
})
```
@@ -2079,24 +2096,31 @@ rollBack():void
```js
import featureAbility from '@ohos.ability.featureAbility'
-let context = featureAbility.getContext()
-const STORE_CONFIG = { name: "RdbTest.db",
- securityLevel: data_rdb.SecurityLevel.S1}
-data_rdb.getRdbStore(context, STORE_CONFIG, async function (err, rdbStore) {
- try {
- rdbStore.beginTransaction()
- const valueBucket = {
- "id": 1,
- "name": "lisi",
- "age": 18,
- "salary": 100.5,
- "blobType": new Uint8Array([1, 2, 3]),
- }
- await rdbStore.insert("test", valueBucket)
- rdbStore.commit()
- } catch (e) {
- rdbStore.rollBack()
- }
+let context = featureAbility.getContext();
+const STORE_CONFIG = {
+ name: "RdbTest.db",
+ securityLevel: relationalStore.SecurityLevel.S1
+};
+relationalStore.getRdbStore(context, STORE_CONFIG, async function (err, store) {
+ if (err) {
+ console.error(`GetRdbStore failed, err: ${err}`);
+ return;
+ }
+ try {
+ store.beginTransaction()
+ const valueBucket = {
+ "id": 1,
+ "name": "lisi",
+ "age": 18,
+ "salary": 100.5,
+ "blobType": new Uint8Array([1, 2, 3]),
+ };
+ await store.insert("test", valueBucket);
+ store.commit();
+ } catch (err) {
+ console.error(`Transaction failed, err: ${err}`);
+ store.rollBack();
+ }
})
```
@@ -2118,12 +2142,12 @@ backup(destName:string, callback: AsyncCallback<void>):void
**示例:**
```js
-rdbStore.backup("dbBackup.db", function(err) {
- if (err) {
- console.info('Backup failed, err: ' + err)
- return
- }
- console.info('Backup success.')
+store.backup("dbBackup.db", function(err) {
+ if (err) {
+ console.error(`Backup failed, err: ${err}`);
+ return;
+ }
+ console.info(`Backup success.`);
})
```
@@ -2150,11 +2174,11 @@ backup(destName:string): Promise<void>
**示例:**
```js
-let promiseBackup = rdbStore.backup("dbBackup.db")
+let promiseBackup = store.backup("dbBackup.db");
promiseBackup.then(()=>{
- console.info('Backup success.')
+ console.info(`Backup success.`);
}).catch((err)=>{
- console.info('Backup failed, err: ' + err)
+ console.error(`Backup failed, err: ${err}`);
})
```
@@ -2176,12 +2200,12 @@ restore(srcName:string, callback: AsyncCallback<void>):void
**示例:**
```js
-rdbStore.restore("dbBackup.db", function(err) {
- if (err) {
- console.info('Restore failed, err: ' + err)
- return
- }
- console.info('Restore success.')
+store.restore("dbBackup.db", function(err) {
+ if (err) {
+ console.error(`Restore failed, err: ${err}`);
+ return;
+ }
+ console.info(`Restore success.`);
})
```
@@ -2208,11 +2232,11 @@ restore(srcName:string): Promise<void>
**示例:**
```js
-let promiseRestore = rdbStore.restore("dbBackup.db")
+let promiseRestore = store.restore("dbBackup.db");
promiseRestore.then(()=>{
- console.info('Restore success.')
+ console.info(`Restore success.`);
}).catch((err)=>{
- console.info('Restore failed, err: ' + err)
+ console.error(`Restore failed, err: ${err}`);
})
```
@@ -2236,12 +2260,12 @@ setDistributedTables(tables: Array<string>, callback: AsyncCallback<voi
**示例:**
```js
-rdbStore.setDistributedTables(["EMPLOYEE"], function (err) {
- if (err) {
- console.info('SetDistributedTables failed, err: ' + err)
- return
- }
- console.info('SetDistributedTables successfully.')
+store.setDistributedTables(["EMPLOYEE"], function (err) {
+ if (err) {
+ console.error(`SetDistributedTables failed, err: ${err}`);
+ return;
+ }
+ console.info(`SetDistributedTables successfully.`);
})
```
@@ -2270,11 +2294,11 @@ rdbStore.setDistributedTables(["EMPLOYEE"], function (err) {
**示例:**
```js
-let promise = rdbStore.setDistributedTables(["EMPLOYEE"])
+let promise = store.setDistributedTables(["EMPLOYEE"]);
promise.then(() => {
- console.info("SetDistributedTables successfully.")
+ console.info(`SetDistributedTables successfully.`);
}).catch((err) => {
- console.info("SetDistributedTables failed, err: " + err)
+ console.error(`SetDistributedTables failed, err: ${err}`);
})
```
@@ -2299,12 +2323,12 @@ obtainDistributedTableName(device: string, table: string, callback: AsyncCallbac
**示例:**
```js
-rdbStore.obtainDistributedTableName("12345678abcde", "EMPLOYEE", function (err, tableName) {
+store.obtainDistributedTableName("12345678abcde", "EMPLOYEE", function (err, tableName) {
if (err) {
- console.info('ObtainDistributedTableName failed, err: ' + err)
- return
+ console.error(`ObtainDistributedTableName failed, err: ${err}`);
+ return;
}
- console.info('ObtainDistributedTableName successfully, tableName=.' + tableName)
+ console.info(`ObtainDistributedTableName successfully, tableName= ${tableName}`);
})
```
@@ -2334,11 +2358,11 @@ rdbStore.obtainDistributedTableName("12345678abcde", "EMPLOYEE", function (err,
**示例:**
```js
-let promise = rdbStore.obtainDistributedTableName("12345678abcde", "EMPLOYEE")
+let promise = store.obtainDistributedTableName("12345678abcde", "EMPLOYEE");
promise.then((tableName) => {
- console.info('ObtainDistributedTableName successfully, tableName= ' + tableName)
+ console.info(`ObtainDistributedTableName successfully, tableName= ${tableName}`);
}).catch((err) => {
- console.info('ObtainDistributedTableName failed, err: ' + err)
+ console.error(`ObtainDistributedTableName failed, err: ${err}`);
})
```
@@ -2363,17 +2387,17 @@ sync(mode: SyncMode, predicates: RdbPredicates, callback: AsyncCallback<Array
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates('EMPLOYEE')
-predicates.inDevices(['12345678abcde'])
-rdbStore.sync(data_rdb.SyncMode.SYNC_MODE_PUSH, predicates, function (err, result) {
- if (err) {
- console.log('Sync failed, err: ' + err)
- return
- }
- console.log('Sync done.')
- for (let i = 0; i < result.length; i++) {
- console.log('device=' + result[i][0] + ' status=' + result[i][1])
- }
+let predicates = new relationalStore.RdbPredicates('EMPLOYEE');
+predicates.inDevices(['12345678abcde']);
+store.sync(relationalStore.SyncMode.SYNC_MODE_PUSH, predicates, function (err, result) {
+ if (err) {
+ console.error(`Sync failed, err: ${err}`);
+ return;
+ }
+ console.info(`Sync done.`);
+ for (let i = 0; i < result.length; i++) {
+ console.info(`device= ${result[i][0]}, status= ${result[i][1]}`);
+ }
})
```
@@ -2403,16 +2427,16 @@ rdbStore.sync(data_rdb.SyncMode.SYNC_MODE_PUSH, predicates, function (err, resul
**示例:**
```js
-let predicates = new data_rdb.RdbPredicates('EMPLOYEE')
-predicates.inDevices(['12345678abcde'])
-let promise = rdbStore.sync(data_rdb.SyncMode.SYNC_MODE_PUSH, predicates)
+let predicates = new relationalStore.RdbPredicates('EMPLOYEE');
+predicates.inDevices(['12345678abcde']);
+let promise = store.sync(relationalStore.SyncMode.SYNC_MODE_PUSH, predicates);
promise.then((resultSet) =>{
- console.log('Sync done.')
- for (let i = 0; i < resultSet.length; i++) {
- console.log('device=' + resultSet[i][0] + ' status=' + resultSet[i][1])
- }
+ console.info(`Sync done.`);
+ for (let i = 0; i < resultSet.length; i++) {
+ console.info(`device= ${result[i][0]}, status= ${result[i][1]}`);
+ }
}).catch((err) => {
- console.log('Sync failed')
+ console.error(`Sync failed, err: ${err}`);
})
```
@@ -2436,14 +2460,14 @@ on(event: 'dataChange', type: SubscribeType, observer: Callback<Array<stri
```js
function storeObserver(devices) {
- for (let i = 0; i < devices.length; i++) {
- console.log('device=' + devices[i] + ' data changed')
- }
+ for (let i = 0; i < devices.length; i++) {
+ console.info(`device= ${devices[i]} data changed`);
+ }
}
try {
- rdbStore.on('dataChange', data_rdb.SubscribeType.SUBSCRIBE_TYPE_REMOTE, storeObserver)
+ store.on('dataChange', relationalStore.SubscribeType.SUBSCRIBE_TYPE_REMOTE, storeObserver);
} catch (err) {
- console.log('Register observer failed')
+ console.error(`Register observer failed, err: ${err}`);
}
```
@@ -2467,14 +2491,14 @@ off(event:'dataChange', type: SubscribeType, observer: Callback<Array<stri
```js
function storeObserver(devices) {
- for (let i = 0; i < devices.length; i++) {
- console.log('device=' + devices[i] + ' data changed')
- }
+ for (let i = 0; i < devices.length; i++) {
+ console.info(`device= ${devices[i]} data changed`);
+ }
}
try {
- rdbStore.off('dataChange', data_rdb.SubscribeType.SUBSCRIBE_TYPE_REMOTE, storeObserver)
+ store.off('dataChange', relationalStore.SubscribeType.SUBSCRIBE_TYPE_REMOTE, storeObserver);
} catch (err) {
- console.log('Unregister observer failed')
+ console.error(`Unregister observer failed, err: ${err}`);
}
```
@@ -2484,16 +2508,15 @@ try {
### 使用说明
-需要通过[RdbStore.query()](#query)获取resultSet对象。
+首先需要获取resultSet对象。
```js
-import dataRdb from '@ohos.data.rdb';
-let predicates = new dataRdb.RdbPredicates("EMPLOYEE");
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("AGE", 18);
-let promise = rdbStore.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
+let promise = store.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- console.log(TAG + "resultSet columnNames:" + resultSet.columnNames);
- console.log(TAG + "resultSet columnCount:" + resultSet.columnCount);
+ console.info(`resultSet columnNames: ${resultSet.columnNames}`);
+ console.info(`resultSet columnCount: ${resultSet.columnCount}`);
});
```
@@ -2618,13 +2641,13 @@ goTo(offset:number): boolean
**示例:**
```js
-let predicates = new dataRdb.RdbPredicates("EMPLOYEE");
-let promise= rdbStore.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+let promise= store.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- resultSet.goTo(1);
- resultSet.close();
+ resultSet.goTo(1);
+ resultSet.close();
}).catch((err) => {
- console.log('query failed');
+ console.error(`query failed, err: ${err}`);
});
```
@@ -2659,13 +2682,13 @@ goToRow(position: number): boolean
**示例:**
```js
-let predicates = new dataRdb.RdbPredicates("EMPLOYEE");
-let promise = rdbStore.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+let promise = store.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- resultSet.(5);
- resultSet.close();
+ resultSet.(5);
+ resultSet.close();
}).catch((err) => {
- console.log('query failed');
+ console.error(`query failed, err: ${err}`);
});
```
@@ -2695,13 +2718,13 @@ goToFirstRow(): boolean
**示例:**
```js
-let predicates = new dataRdb.RdbPredicates("EMPLOYEE");
-let promise = rdbStore.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+let promise = store.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- resultSet.goToFirstRow();
- resultSet.close();
+ resultSet.goToFirstRow();
+ resultSet.close();
}).catch((err) => {
- console.log('query failed');
+ console.error(`query failed, err: ${err}`);
});
```
@@ -2730,13 +2753,13 @@ goToLastRow(): boolean
**示例:**
```js
-let predicates = new dataRdb.RdbPredicates("EMPLOYEE");
-let promise = rdbStore.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+let promise = store.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- resultSet.goToLastRow();
- resultSet.close();
+ resultSet.goToLastRow();
+ resultSet.close();
}).catch((err) => {
- console.log('query failed');
+ console.error(`query failed, err: ${err}`);
});
```
@@ -2765,13 +2788,13 @@ goToNextRow(): boolean
**示例:**
```js
-let predicates = new dataRdb.RdbPredicates("EMPLOYEE");
-let promise = rdbStore.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+let promise = store.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- resultSet.goToNextRow();
- resultSet.close();
+ resultSet.goToNextRow();
+ resultSet.close();
}).catch((err) => {
- console.log('query failed');
+ console.error(`query failed, err: ${err}`);
});
```
@@ -2800,13 +2823,13 @@ goToPreviousRow(): boolean
**示例:**
```js
-let predicates = new dataRdb.RdbPredicates("EMPLOYEE");
-let promise = rdbStore.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
+let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
+let promise = store.query(predicates, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promise.then((resultSet) => {
- resultSet.goToPreviousRow();
- resultSet.close();
+ resultSet.goToPreviousRow();
+ resultSet.close();
}).catch((err) => {
- console.log('query failed');
+ console.error(`query failed, err: ${err}`);
});
```
@@ -2991,12 +3014,12 @@ close(): void
**示例:**
```js
-let predicatesClose = new dataRdb.RdbPredicates("EMPLOYEE");
-let promiseClose = rdbStore.query(predicatesClose, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
+let predicatesClose = new relationalStore.RdbPredicates("EMPLOYEE");
+let promiseClose = store.query(predicatesClose, ["ID", "NAME", "AGE", "SALARY", "CODES"]);
promiseClose.then((resultSet) => {
- resultSet.close();
+ resultSet.close();
}).catch((err) => {
- console.log('resultset close failed');
+ console.error(`resultset close failed, err: ${err}`);
});
```