Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
4692348c
D
Docs
项目概览
OpenHarmony
/
Docs
大约 2 年 前同步成功
通知
161
Star
293
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
4692348c
编写于
6月 29, 2023
作者:
O
openharmony_ci
提交者:
Gitee
6月 29, 2023
浏览文件
操作
浏览文件
下载
差异文件
!20079 添加asset相关接口
Merge pull request !20079 from renjiecui/master
上级
b2c80112
229be159
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
316 addition
and
23 deletion
+316
-23
zh-cn/application-dev/reference/apis/js-apis-data-relationalStore.md
...cation-dev/reference/apis/js-apis-data-relationalStore.md
+316
-23
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-data-relationalStore.md
浏览文件 @
4692348c
...
@@ -334,6 +334,45 @@ class EntryAbility extends UIAbility {
...
@@ -334,6 +334,45 @@ class EntryAbility extends UIAbility {
| S3 | 3 | 表示数据库的安全级别为高级别,当数据泄露时会产生重大影响。例如,包含用户运动、健康、位置等信息的数据库。 |
| S3 | 3 | 表示数据库的安全级别为高级别,当数据泄露时会产生重大影响。例如,包含用户运动、健康、位置等信息的数据库。 |
| S4 | 4 | 表示数据库的安全级别为关键级别,当数据泄露时会产生严重影响。例如,包含认证凭据、财务数据等信息的数据库。 |
| S4 | 4 | 表示数据库的安全级别为关键级别,当数据泄露时会产生严重影响。例如,包含认证凭据、财务数据等信息的数据库。 |
## AssetStatus<sup>10+</sup>
描述资产附件的状态枚举。请使用枚举名称而非枚举值。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
| 名称 | 值 | 说明 |
| ------------------------------- | --- | -------------- |
| ASSET_NORMAL | - | 表示资产状态正常。 |
| ASSET_INSERT | - | 表示资产需要插入到云端。 |
| ASSET_UPDATE | - | 表示资产需要更新到云端。 |
| ASSET_DELETE | - | 表示资产需要在云端删除。 |
| ASSET_ABNORMAL | - | 表示资产状态异常。 |
| ASSET_DOWNLOADING | - | 表示资产正在下载到本地设备。 |
## Asset<sup>10+</sup>
记录资产附件(文件、图片、视频等类型文件)的相关信息。资产类型的相关接口暂不支持Datashare。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
| 名称 | 类型 | 必填 | 说明 |
| ----------- | --------------------------- | --- | ------------ |
| name | string | 是 | 资产的名称。 |
| uri | string | 是 | 资产的uri,在系统里的绝对路径。 |
| path | string | 是 | 资产在应用沙箱里的路径。 |
| createTime | string | 是 | 资产被创建出来的时间。 |
| modifyTime | string | 是 | 资产最后一次被修改的时间。 |
| size | string | 是 | 资产占用空间的大小。 |
| status |
[
AssetStatus
](
#assetstatus10
)
| 否 | 资产的状态,默认值为ASSET_NORMAL。 |
## Assets<sup>10+</sup>
表示
[
Asset
](
#asset10
)
类型的数组。
| 类型 | 说明 |
| ------- | -------------------- |
|
[
Asset
](
#asset10
)[]
| 表示Asset类型的数组。 |
## ValueType
## ValueType
用于表示允许的数据字段类型。
用于表示允许的数据字段类型。
...
@@ -342,9 +381,13 @@ class EntryAbility extends UIAbility {
...
@@ -342,9 +381,13 @@ class EntryAbility extends UIAbility {
| 类型 | 说明 |
| 类型 | 说明 |
| ------- | -------------------- |
| ------- | -------------------- |
| null
<sup>
10+
</sup>
| 表示值类型为空。 |
| number | 表示值类型为数字。 |
| number | 表示值类型为数字。 |
| string | 表示值类型为字符。 |
| string | 表示值类型为字符。 |
| boolean | 表示值类型为布尔值。 |
| boolean | 表示值类型为布尔值。 |
| Uint8Array
<sup>
10+
</sup>
| 表示值类型为Uint8类型的数组。 |
| Asset
<sup>
10+
</sup>
| 表示值类型为附件
[
Asset
](
#asset10
)
。 |
| Assets
<sup>
10+
</sup>
| 表示值类型为附件数组
[
Assets
](
#assets10
)
。 |
## ValuesBucket
## ValuesBucket
...
@@ -353,19 +396,20 @@ class EntryAbility extends UIAbility {
...
@@ -353,19 +396,20 @@ class EntryAbility extends UIAbility {
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
| 键类型 | 值类型 |
| 键类型 | 值类型 |
| ------ | -----------------------
------------------------------------
|
| ------ | ----------------------- |
| string |
[
ValueType
](
#valuetype
)
\|
Uint8Array
\|
null
|
| string |
[
ValueType
](
#valuetype
)
|
## SyncMode
## SyncMode
指数据库同步模式。
指数据库同步模式。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
| 名称 | 值 | 说明 |
| 名称 | 值 | 说明 |
| -------------- | ---- | ---------------------------------- |
| -------------- | ---- | ---------------------------------- |
| SYNC_MODE_PUSH | 0 | 表示数据从本地设备推送到远程设备。 |
| SYNC_MODE_PUSH | 0 | 表示数据从本地设备推送到远程设备。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core |
| SYNC_MODE_PULL | 1 | 表示数据从远程设备拉至本地设备。 |
| SYNC_MODE_PULL | 1 | 表示数据从远程设备拉至本地设备。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core |
| SYNC_MODE_TIME_FIRST
<sup>
10+
</sup>
| - | 表示数据从修改时间较近的一端同步到修改时间较远的一端。请使用枚举名称而非枚举值。暂不支持端云手动同步。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Client |
| SYNC_MODE_NATIVE_FIRST
<sup>
10+
</sup>
| - | 表示数据从本地设备同步到云端。请使用枚举名称而非枚举值。暂不支持端云手动同步。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Client |
| SYNC_MODE_CLOUD_FIRST
<sup>
10+
</sup>
| - | 表示数据从云端同步到本地设备。请使用枚举名称而非枚举值。暂不支持端云手动同步。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Client |
## SubscribeType
## SubscribeType
...
@@ -379,6 +423,54 @@ class EntryAbility extends UIAbility {
...
@@ -379,6 +423,54 @@ class EntryAbility extends UIAbility {
| SUBSCRIBE_TYPE_CLOUD
<sup>
10+
</sup>
| - | 订阅云端数据更改。请使用枚举名称而非枚举值。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Client |
| SUBSCRIBE_TYPE_CLOUD
<sup>
10+
</sup>
| - | 订阅云端数据更改。请使用枚举名称而非枚举值。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Client |
| SUBSCRIBE_TYPE_CLOUD_DETAILS
<sup>
10+
</sup>
| - | 订阅云端数据更改详情。请使用枚举名称而非枚举值。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Client |
| SUBSCRIBE_TYPE_CLOUD_DETAILS
<sup>
10+
</sup>
| - | 订阅云端数据更改详情。请使用枚举名称而非枚举值。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Client |
## ChangeType<sup>10+</sup>
描述数据变更类型的枚举。请使用枚举名称而非枚举值。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**需要权限:**
ohos.permission.DISTRIBUTED_DATASYNC
| 名称 | 值 | 说明 |
| -------------------------- | --- | -------------------------- |
| DATA_CHANGE | - | 表示是数据发生变更。 |
| ASSET_CHANGE | - | 表示是资产附件发生了变更。 |
## ChangeInfo<sup>10+</sup>
记录端云同步过程详情。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Client
| 名称 | 类型 | 必填 | 说明 |
| -------- | ---------------------------------- | --- | -------------------------------------------------------------------------------------------------------------------- |
| table | string | 是 | 表示发生变化的表的名称。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core |
| type |
[
ChangeType
](
#changetype10
)
| 是 | 表示发生变化的数据的类型,数据或者资产附件发生变化。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core |
| inserted | Array
\<
string
\>
\|
Array
\<
number
\>
| 是 | 记录插入数据的位置,如果该表的主键是string类型,该值是主键的值,否则该值表示插入数据的行号。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core |
| updated | Array
\<
string
\>
\|
Array
\<
number
\>
| 是 | 记录更新数据的位置,如果该表的主键是string类型,该值是主键的值,否则该值表示更新数据的行号。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core |
| deleted | Array
\<
string
\>
\|
Array
\<
number
\>
| 是 | 记录删除数据的位置,如果该表的主键是string类型,该值是主键的值,否则该值表示删除数据的行号。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core |
## DistributedType<sup>10+</sup>
描述表的分布式类型的枚举。请使用枚举名称而非枚举值。
**需要权限:**
ohos.permission.DISTRIBUTED_DATASYNC
| 名称 | 值 | 说明 |
| ------------------ | --- | -------------------------------------------------------------------------------------------------- |
| DISTRIBUTED_DEVICE | - | 表示在不同设备之间分布式的数据库表。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core |
| DISTRIBUTED_CLOUD | - | 表示在设备和云端之间分布式的数据库表。
<br>
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Client |
## DistributedConfig<sup>10+</sup>
记录表的分布式配置信息。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
| 名称 | 类型 | 必填 | 说明 |
| -------- | ------- | ---- | ------------------------------------------------------------ |
| autoSync | boolean | 是 | 该值为true时,表示该表支持自动同步和手动同步;该值为false时,表示该表只支持手动同步,不支持自动同步。 |
## ConflictResolution<sup>10+</sup>
## ConflictResolution<sup>10+</sup>
插入和修改接口的冲突解决方式。
插入和修改接口的冲突解决方式。
...
@@ -2840,7 +2932,7 @@ promiseRestore.then(()=>{
...
@@ -2840,7 +2932,7 @@ promiseRestore.then(()=>{
setDistributedTables(tables: Array
<
string
>
, callback: AsyncCallback
<
void
>
): void
setDistributedTables(tables: Array
<
string
>
, callback: AsyncCallback
<
void
>
): void
设置分布式
列
表,使用callback异步回调。
设置分布式
数据库
表,使用callback异步回调。
**需要权限:**
ohos.permission.DISTRIBUTED_DATASYNC
**需要权限:**
ohos.permission.DISTRIBUTED_DATASYNC
...
@@ -2850,7 +2942,7 @@ setDistributedTables(tables: Array<string>, callback: AsyncCallback<voi
...
@@ -2850,7 +2942,7 @@ setDistributedTables(tables: Array<string>, callback: AsyncCallback<voi
| 参数名 | 类型 | 必填 | 说明 |
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------------------- |
| -------- | ------------------------- | ---- | ---------------------- |
| tables | Array
<
string
>
| 是 | 要设置的分布式
列表表名
|
| tables | Array
<
string
>
| 是 | 要设置的分布式
数据库表表名。
|
| callback | AsyncCallback
<
void
>
| 是 | 指定callback回调函数。 |
| callback | AsyncCallback
<
void
>
| 是 | 指定callback回调函数。 |
**错误码:**
**错误码:**
...
@@ -2877,7 +2969,7 @@ store.setDistributedTables(["EMPLOYEE"], function (err) {
...
@@ -2877,7 +2969,7 @@ store.setDistributedTables(["EMPLOYEE"], function (err) {
setDistributedTables(tables: Array
<
string
>
): Promise
<
void
>
setDistributedTables(tables: Array
<
string
>
): Promise
<
void
>
设置分布式
列
表,使用Promise异步回调。
设置分布式
数据库
表,使用Promise异步回调。
**需要权限:**
ohos.permission.DISTRIBUTED_DATASYNC
**需要权限:**
ohos.permission.DISTRIBUTED_DATASYNC
...
@@ -2886,8 +2978,8 @@ store.setDistributedTables(["EMPLOYEE"], function (err) {
...
@@ -2886,8 +2978,8 @@ store.setDistributedTables(["EMPLOYEE"], function (err) {
**参数:**
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------------------- | ---- | ------------------------ |
| ------ | -------------------
-----
| ---- | ------------------------ |
| tables | Array
<
string
>
| 是 | 要设置的分布式列
表表名。 |
| tables | Array
Array
<
string
>
| 是 | 要设置的分布式数据库
表表名。 |
**返回值**
:
**返回值**
:
...
@@ -2897,10 +2989,10 @@ store.setDistributedTables(["EMPLOYEE"], function (err) {
...
@@ -2897,10 +2989,10 @@ store.setDistributedTables(["EMPLOYEE"], function (err) {
**错误码:**
**错误码:**
以下错误码的详细介绍请参见
[
关系型数据库错误码
](
..
/errorcodes/errorcode-data-rdb.md
)
。
以下错误码的详细介绍请参见
[
关系型数据库错误码
](
https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference
/errorcodes/errorcode-data-rdb.md
)
。
|
**错误码ID**
|
**错误信息**
|
|
**错误码ID**
|
**错误信息**
|
| ------------ | ------------
----------------
|
| ------------ | ------------ |
| 14800000 | Inner error. |
| 14800000 | Inner error. |
**示例:**
**示例:**
...
@@ -2914,6 +3006,76 @@ promise.then(() => {
...
@@ -2914,6 +3006,76 @@ promise.then(() => {
})
})
```
```
### setDistributedTables<sup>10+</sup>
setDistributedTables(tables: Array
<
string
>
, type: number, config: DistributedConfig, callback: AsyncCallback
<
void
>
): void
设置分布式数据库表,使用callback异步回调。
**需要权限:**
ohos.permission.DISTRIBUTED_DATASYNC
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------------------- | --- | --------------- |
| tables | Array
<
string
>
| 是 | 要设置的分布式数据库表表名。 |
| type | number | 是 | 表的分布式类型。目前支持的入参值为: relationalStore.DistributedType.DISTRIBUTED_DEVICE、relationalStore.DistributedType.DISTRIBUTED_CLOUD。
<br>
当type为relationalStore.DistributedType.DISTRIBUTED_DEVICE时,表示表在不同设备之间分布式。
<br>
当type为relationalStore.DistributedType.DISTRIBUTED_CLOUD时,表示表在设备和云端之间分布式。 |
| config |
[
DistributedConfig
](
#distributedconfig10
)
| 是 | 表的分布式配置信息。 |
| callback | AsyncCallback
<
void
>
| 是 | 指定callback回调函数。 |
**示例:**
```
js
let
config
=
new
DistributedConfig
();
config
.
autoSync
=
true
;
store
.
setDistributedTables
([
"
EMPLOYEE
"
],
relationalStore
.
DistributedType
.
DISTRIBUTED_CLOUD
,
config
,
function
(
err
)
{
if
(
err
)
{
console
.
error
(
`SetDistributedTables failed, code is
${
err
.
code
}
,message is
${
err
.
message
}
`
);
return
;
}
console
.
info
(
`SetDistributedTables successfully.`
);
})
```
### setDistributedTables<sup>10+</sup>
setDistributedTables(tables: Array
<
string>, type?: number, config?: DistributedConfig): Promise
<
void>
设置分布式数据库表,使用Promise异步回调。
**需要权限:**
ohos.permission.DISTRIBUTED_DATASYNC
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ----------------------------------------- | ---- | ------------------------------------------------------------ |
| tables | Array
<
string
>
| 是 | 要设置的分布式数据库表表名。 |
| type | number | 否 | 表的分布式类型。默认值是relationalStore.DistributedType.DISTRIBUTED_DEVICE。
<br>
目前支持的入参值为: relationalStore.DistributedType.DISTRIBUTED_DEVICE、relationalStore.DistributedType.DISTRIBUTED_CLOUD。
<br/>
当type为relationalStore.DistributedType.DISTRIBUTED_DEVICE时,表示表在不同设备之间分布式。
<br/>
当type为relationalStore.DistributedType.DISTRIBUTED_CLOUD时,表示表在设备和云端之间分布式。 |
| config |
[
DistributedConfig
](
#distributedconfig10
)
| 否 | 表的分布式配置信息。不传入时默认autoSync为false,即只支持手动同步。 |
**返回值**
:
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise
<
void
>
| 无返回结果的Promise对象。 |
**示例:**
```
js
let
config
=
new
DistributedConfig
();
config
.
autoSync
=
true
;
let
promise
=
store
.
setDistributedTables
([
"
EMPLOYEE
"
],
relationalStore
.
DistributedType
.
DISTRIBUTED_CLOUD
,
config
);
promise
.
then
(()
=>
{
console
.
info
(
`SetDistributedTables successfully.`
);
}).
catch
((
err
)
=>
{
console
.
error
(
`SetDistributedTables failed, code is
${
err
.
code
}
,message is
${
err
.
message
}
`
);
})
```
### obtainDistributedTableName
### obtainDistributedTableName
obtainDistributedTableName(device: string, table: string, callback: AsyncCallback
<
string
>
): void
obtainDistributedTableName(device: string, table: string, callback: AsyncCallback
<
string
>
): void
...
@@ -3044,7 +3206,7 @@ sync(mode: SyncMode, predicates: RdbPredicates, callback: AsyncCallback<Array
...
@@ -3044,7 +3206,7 @@ sync(mode: SyncMode, predicates: RdbPredicates, callback: AsyncCallback<Array
| 参数名 | 类型 | 必填 | 说明 |
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | -------------------------------------------------- | ---- | ------------------------------------------------------------ |
| ---------- | -------------------------------------------------- | ---- | ------------------------------------------------------------ |
| mode |
[
SyncMode
](
#syncmode
)
| 是 | 指同步模式。该值可以是
推、拉
。 |
| mode |
[
SyncMode
](
#syncmode
)
| 是 | 指同步模式。该值可以是
relationalStore.SyncMode.SYNC_MODE_PUSH、relationalStore.SyncMode.SYNC_MODE_PULL
。 |
| predicates |
[
RdbPredicates
](
#rdbpredicates
)
| 是 | 约束同步数据和设备。 |
| predicates |
[
RdbPredicates
](
#rdbpredicates
)
| 是 | 约束同步数据和设备。 |
| callback | AsyncCallback
<
Array
<
[string, number]
>>
| 是 | 指定的callback回调函数,用于向调用者发送同步结果。string:设备ID;number:每个设备同步状态,0表示成功,其他值表示失败。 |
| callback | AsyncCallback
<
Array
<
[string, number]
>>
| 是 | 指定的callback回调函数,用于向调用者发送同步结果。string:设备ID;number:每个设备同步状态,0表示成功,其他值表示失败。 |
...
@@ -3103,7 +3265,7 @@ store.sync(relationalStore.SyncMode.SYNC_MODE_PUSH, predicates, function (err, r
...
@@ -3103,7 +3265,7 @@ store.sync(relationalStore.SyncMode.SYNC_MODE_PUSH, predicates, function (err, r
| 参数名 | 类型 | 必填 | 说明 |
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------------------ | ---- | ------------------------------ |
| ---------- | ------------------------------------ | ---- | ------------------------------ |
| mode |
[
SyncMode
](
#syncmode
)
| 是 | 指同步模式。该值可以是
推、拉
。 |
| mode |
[
SyncMode
](
#syncmode
)
| 是 | 指同步模式。该值可以是
relationalStore.SyncMode.SYNC_MODE_PUSH、relationalStore.SyncMode.SYNC_MODE_PULL
。 |
| predicates |
[
RdbPredicates
](
#rdbpredicates
)
| 是 | 约束同步数据和设备。 |
| predicates |
[
RdbPredicates
](
#rdbpredicates
)
| 是 | 约束同步数据和设备。 |
**返回值**
:
**返回值**
:
...
@@ -3156,7 +3318,38 @@ promise.then((result) =>{
...
@@ -3156,7 +3318,38 @@ promise.then((result) =>{
on(event: 'dataChange', type: SubscribeType, observer: Callback
<
Array
<
string
>>
): void
on(event: 'dataChange', type: SubscribeType, observer: Callback
<
Array
<
string
>>
): void
注册数据库的观察者。当分布式数据库中的数据发生更改时,将调用回调。
注册数据库的数据变更的事件监听。当分布式数据库中的数据发生更改时,将调用回调。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
| event | string | 是 | 取值为'dataChange',表示数据更改。 |
| type |
[
SubscribeType
](
https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-data-relationalStore.md#subscribetype
)
| 是 | 订阅类型。 |
| observer | Callback
<
Array
<
string
>>
| 是 | 指分布式数据库中数据更改事件的观察者。Array
<
string
>
为数据库中的数据发生改变的对端设备ID。 |
**示例:**
```
function storeObserver(devices) {
for (let i = 0; i < devices.length; i++) {
console.info(`device= ${devices[i]} data changed`);
}
}
try {
store.on('dataChange', relationalStore.SubscribeType.SUBSCRIBE_TYPE_REMOTE, storeObserver);
} catch (err) {
console.error(`Register observer failed, code is ${err.code},message is ${err.message}`);
}
```
### on('dataChange')<sup>10+</sup>
on(event: 'dataChange', type: SubscribeType, observer: Callback
<
Array
<
string
>>
\|
Callback
<
Array
<
ChangeInfo
>>
): void
注册数据库的数据变更的事件监听。当分布式数据库中的数据发生更改时,将调用回调。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
...
@@ -3166,7 +3359,7 @@ on(event: 'dataChange', type: SubscribeType, observer: Callback<Array<stri
...
@@ -3166,7 +3359,7 @@ on(event: 'dataChange', type: SubscribeType, observer: Callback<Array<stri
| -------- | ----------------------------------- | ---- | ------------------------------------------- |
| -------- | ----------------------------------- | ---- | ------------------------------------------- |
| event | string | 是 | 取值为'dataChange',表示数据更改。 |
| event | string | 是 | 取值为'dataChange',表示数据更改。 |
| type |
[
SubscribeType
](
#subscribetype
)
| 是 | 订阅类型。 |
| type |
[
SubscribeType
](
#subscribetype
)
| 是 | 订阅类型。 |
| observer | Callback
<
Array
<
string
>>
| 是 | 指分布式数据库中数据更改事件的观察者。Array
<
string>为数据库中的数据发生改变的对端设备ID
。 |
| observer | Callback
<
Array
<
string
>>
\|
Callback
<
Array
<
[ChangeInfo](#changeinfo10)
>>
| 是 | 回调函数。
<br>
当type为SUBSCRIBE_TYPE_REMOTE,observer类型需为Callback
<
Array
<
string
>>
,其中Array
<
string
>
为数据库中的数据发生改变的对端设备ID。
<br>
当type为SUBSCRIBE_TYPE_CLOUD,observer类型需为Callback
<
Array
<
string
>>
,其中Array
<
string
>
为数据库中的数据发生改变的云端帐号。
<br>
当type为SUBSCRIBE_TYPE_CLOUD_DETAILS,observer类型需为Callback
<
Array
<
ChangeInfo
>>
,其中Array
<
ChangeInfo
>
为数据库端云同步过程的详情
。 |
**示例:**
**示例:**
...
@@ -3187,7 +3380,38 @@ try {
...
@@ -3187,7 +3380,38 @@ try {
off(event:'dataChange', type: SubscribeType, observer: Callback
<
Array
<
string
>>
): void
off(event:'dataChange', type: SubscribeType, observer: Callback
<
Array
<
string
>>
): void
从数据库中删除指定类型的指定观察者, 使用callback异步回调。
取消数据变更的事件监听。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
| event | string | 是 | 取值为'dataChange',表示数据更改。 |
| type |
[
SubscribeType
](
https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-data-relationalStore.md#subscribetype
)
| 是 | 订阅类型。 |
| observer | Callback
<
Array
<
string
>>
| 是 | 指已注册的数据更改观察者。Array
<
string
>
为数据库中的数据发生改变的对端设备ID。 |
**示例:**
```
function storeObserver(devices) {
for (let i = 0; i < devices.length; i++) {
console.info(`device= ${devices[i]} data changed`);
}
}
try {
store.off('dataChange', relationalStore.SubscribeType.SUBSCRIBE_TYPE_REMOTE, storeObserver);
} catch (err) {
console.error(`Unregister observer failed, code is ${err.code},message is ${err.message}`);
}
```
### off('dataChange')<sup>10+</sup>
off(event:'dataChange', type: SubscribeType, observer?: Callback
<
Array
<
string
>>
\|
Callback
<
Array
<
ChangeInfo
>>
): void
取消数据变更的事件监听。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
...
@@ -3197,7 +3421,7 @@ off(event:'dataChange', type: SubscribeType, observer: Callback<Array<stri
...
@@ -3197,7 +3421,7 @@ off(event:'dataChange', type: SubscribeType, observer: Callback<Array<stri
| -------- | ---------------------------------- | ---- | ------------------------------------------ |
| -------- | ---------------------------------- | ---- | ------------------------------------------ |
| event | string | 是 | 取值为'dataChange',表示数据更改。 |
| event | string | 是 | 取值为'dataChange',表示数据更改。 |
| type |
[
SubscribeType
](
#subscribetype
)
| 是 | 订阅类型。 |
| type |
[
SubscribeType
](
#subscribetype
)
| 是 | 订阅类型。 |
| observer | Callback
<
Array
<
string
>>
| 是 | 指已注册的数据更改观察者。Array
<
string>为数据库中的数据发生改变的对端设备ID
。 |
| observer | Callback
<
Array
<
string
>>
\|
Callback
<
Array
<
[ChangeInfo](#changeinfo10)
>>
| 否 | 回调函数。
<br/>
当type为SUBSCRIBE_TYPE_REMOTE,observer类型需为Callback
<
Array
<
string
>>
,其中Array
<
string
>
为数据库中的数据发生改变的对端设备ID。
<br/>
当type为SUBSCRIBE_TYPE_CLOUD,observer类型需为Callback
<
Array
<
string
>>
,其中Array
<
string
>
为数据库中的数据发生改变的云端帐号。
<br/>
当type为SUBSCRIBE_TYPE_CLOUD_DETAILS,observer类型需为Callback
<
Array
<
ChangeInfo
>>
,其中Array
<
ChangeInfo
>
为数据库端云同步过程的详情。
<br>
当observer没有传入时,表示取消当前type类型下所有数据变更的事件监听
。 |
**示例:**
**示例:**
...
@@ -3683,6 +3907,75 @@ getDouble(columnIndex: number): number
...
@@ -3683,6 +3907,75 @@ getDouble(columnIndex: number): number
const
salary
=
resultSet
.
getDouble
(
resultSet
.
getColumnIndex
(
"
SALARY
"
));
const
salary
=
resultSet
.
getDouble
(
resultSet
.
getColumnIndex
(
"
SALARY
"
));
```
```
### getAsset<sup>10+</sup>
getAsset(columnIndex: number): Asset
以
[
Asset
](
#asset10
)
形式获取当前行中指定列的值。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ----------- | ------ | --- | ------------ |
| columnIndex | number | 是 | 指定的列索引,从0开始。 |
**返回值:**
| 类型 | 说明 |
| --------------- | -------------------------- |
|
[
Asset
](
#asset10
)
| 以Asset形式返回指定列的值。 |
**错误码:**
以下错误码的详细介绍请参见
[
关系型数据库错误码
](
../errorcodes/errorcode-data-rdb.md
)
。
|
**错误码ID**
|
**错误信息**
|
| --------- | ------------------------------------------------------------ |
| 14800013 | The column value is null or the column type is incompatible. |
**示例:**
```
js
const
doc
=
resultSet
.
getAsset
(
resultSet
.
getColumnIndex
(
"
DOC
"
));
```
### getAssets<sup>10+</sup>
getAssets(columnIndex: number): Assets
以
[
Assets
](
#assets10
)
形式获取当前行中指定列的值。
**系统能力:**
SystemCapability.DistributedDataManager.RelationalStore.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ----------- | ------ | --- | ------------ |
| columnIndex | number | 是 | 指定的列索引,从0开始。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | ---------------------------- |
|
[
Assets
](
#assets10
)
| 以Assets形式返回指定列的值。 |
**错误码:**
以下错误码的详细介绍请参见
[
关系型数据库错误码
](
../errorcodes/errorcode-data-rdb.md
)
。
|
**错误码ID**
|
**错误信息**
|
| ------------ | ------------------------------------------------------------ |
| 14800013 | The column value is null or the column type is incompatible. |
**示例:**
```
js
const
docs
=
resultSet
.
getAssets
(
resultSet
.
getColumnIndex
(
"
DOCS
"
));
```
### isColumnNull
### isColumnNull
isColumnNull(columnIndex: number): boolean
isColumnNull(columnIndex: number): boolean
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录