Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
7aa2816d
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看板
提交
7aa2816d
编写于
5月 26, 2022
作者:
S
songruirui
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
datashare接口文档新增
Signed-off-by:
N
songruirui
<
songruirui1@huawei.com
>
上级
7150a768
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
2454 addition
and
0 deletion
+2454
-0
zh-cn/application-dev/reference/apis/js-apis-application-DataShareExtensionAbility.md
...nce/apis/js-apis-application-DataShareExtensionAbility.md
+378
-0
zh-cn/application-dev/reference/apis/js-apis-data-DataSharePredicates.md
...on-dev/reference/apis/js-apis-data-DataSharePredicates.md
+827
-0
zh-cn/application-dev/reference/apis/js-apis-data-DataShareResultSet.md
...ion-dev/reference/apis/js-apis-data-DataShareResultSet.md
+405
-0
zh-cn/application-dev/reference/apis/js-apis-data-ValuesBucket.md
...plication-dev/reference/apis/js-apis-data-ValuesBucket.md
+32
-0
zh-cn/application-dev/reference/apis/js-apis-data-dataShare.md
.../application-dev/reference/apis/js-apis-data-dataShare.md
+812
-0
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-application-DataShareExtensionAbility.md
0 → 100644
浏览文件 @
7aa2816d
# DataShareExtensionAbility
**DataShareExtensionAbility**
作为一种扩展能力提供基础生命周期管理,支持基于场景(比如卡片、Workscheduler)的Ability的生命周期管理,提供相应的回调接口(启动、接口调用、连接、断开连接、销毁等)
>**说明:**
>本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 导入模块
```
js
import
Extension
from
'
@ohos.application.DataShareExtensionAbility
'
```
## onCreate
onCreate?(want: Want, callback: AsyncCallback
<void>
): void;
DataShareExtAbility生命周期回调,在创建时回调,执行初始化业务逻辑操作
**系统能力**
:以下各项对应的系统能力均为SystemCapability.DistributedDataManager.DataShare.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----- | ------ | ------ | ------ |
| want | Want | 是 | Want类型信息,包括ability名称、bundle名称等。 |
**返回值**
: 无
**示例:**
```
js
import
rdb
from
'
@ohos.data.rdb
'
;
onCreate
(
want
)
{
console
.
log
(
'
DataShareExtAbility onCreate, want:
'
+
want
.
abilityName
);
console
.
log
(
'
this.context:
'
+
this
.
context
);
rdb
.
getRdbStore
(
this
.
context
,
{
name
:
DB_NAME
},
1
,
function
(
err
,
data
)
{
console
.
log
(
'
DataShareExtAbility onCreate, getRdbStore done err:
'
+
JSON
.
stringify
(
err
));
console
.
log
(
'
DataShareExtAbility onCreate, getRdbStore done data:
'
+
JSON
.
stringify
(
data
));
rdbStore
=
data
;
rdbStore
.
executeSql
(
DDL_TBL_CREATE
,
[],
function
(
err
)
{
console
.
log
(
'
DataShareExtAbility onCreate, executeSql done err:
'
+
JSON
.
stringify
(
err
));
});
});
}
```
## insert
insert?(uri: string, valueBucket: ValuesBucket, callback: AsyncCallback
<number>
): void;
insert生命周期回调,在数据库插入时回调
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----- | ------ | ------ | ------ |
| uri |string | 是 | 指示要插入的数据的路径 |
| valuesBucket |ValuesBucket | 是 | 指示要插入的数据记录 |
**返回值:**
| 类型 | 说明 |
| -------- | -------- |
| number | 返回插入数据记录的索引 |
**示例:**
```
js
import
rdb
from
'
@ohos.data.rdb
'
;
let
TBL_NAME
=
"
TBL00
"
;
insert
(
uri
,
value
,
callback
)
{
if
(
value
==
null
)
{
console
.
info
(
'
invalid valueBuckets
'
);
return
;
}
await
rdbStore
.
insert
(
TBL_NAME
,
value
,
function
(
err
,
ret
)
{
console
.
info
(
'
callback ret:
'
+
ret
);
if
(
callback
!=
undefined
)
{
callback
(
err
,
ret
);
}
});
}
```
### update
update?(uri: string, predicates: DataSharePredicates, valueBucket: ValuesBucket,callback: AsyncCallback
<number>
): void;
update生命周期回调,在数据库更新时回调
| 参数名 | 参数类型 | 必填 | 说明 |
| ----- | ------ | ------ | ------ |
| uri | string | 是 | 指示要更新的数据的路径 |
| predicates | DataSharePredicates | 是 | 指示要更新的数据 |
| valueBucket | ValuesBucket | 是 | 指示筛选条件 |
**返回值:**
| 类型 | 说明 |
| ------ | -------------------- |
| number | 返回更新的数据记录数 |
**示例:**
```
js
import
rdb
from
'
@ohos.data.rdb
'
;
let
TBL_NAME
=
"
TBL00
"
;
update
(
uri
,
predicates
,
value
,
callback
)
{
if
(
predicates
==
null
||
predicates
==
undefined
)
{
return
;
}
rdbStore
.
update
(
TBL_NAME
,
value
,
predicates
,
function
(
err
,
ret
)
{
if
(
callback
!=
undefined
)
{
callback
(
err
,
ret
);
}
});
}
```
### query
query?(uri: string, predicates: DataSharePredicates, columns: Array
<string>
,callback: AsyncCallback
<Object>
): void;
query生命周期回调,在数据库查询时回调
| 名称 | 参数类型 | 必填 | 说明 |
| ----- | ------ | ------ | ------ |
| uri | string | 是 | 指示要查询的数据的路径 |
| predicates | DataSharePredicates | 是 | 指示筛选条件 |
| columns | Array
<string>
| 是 | 指示要查询的列。如果此参数为空,则查询所有列 |
**返回值:**
| 类型 | 说明 |
| --------- | -------------- |
| ResultSet | 返回查询结果集 |
**示例:**
```
js
import
rdb
from
'
@ohos.data.rdb
'
;
let
TBL_NAME
=
"
TBL00
"
;
query
(
uri
,
predicates
,
columns
,
callback
)
{
if
(
predicates
==
null
||
predicates
==
undefined
)
{
return
;
}
rdbStore
.
query
(
TBL_NAME
,
predicates
,
columns
,
function
(
err
,
resultSet
)
{
if
(
resultSet
!=
undefined
)
{
console
.
info
(
'
resultSet.rowCount:
'
+
resultSet
.
rowCount
);
}
if
(
callback
!=
undefined
)
{
callback
(
err
,
resultSet
);
}
});
}
```
### delete
delete?(uri: string, predicates: DataSharePredicates, callback: AsyncCallback
<number>
): void;
delete生命周期回调,在删除数据库记录时回调
| 名称 | 参数类型 | 必填 | 说明 |
| ---------- | ------------------- | ---- | ---------------------- |
| uri | string | 是 | 指示要查询的数据的路径 |
| predicates | DataSharePredicates | 是 | 指示筛选条件 |
**返回值:**
| 类型 | 说明 |
| ------ | ---------------------- |
| number | 返回已删除的数据记录数 |
**示例:**
```
js
import
rdb
from
'
@ohos.data.rdb
'
;
let
TBL_NAME
=
"
TBL00
"
;
delete
(
uri
,
predicates
,
callback
)
{
if
(
predicates
==
null
||
predicates
==
undefined
)
{
return
;
}
rdbStore
.
delete
(
TBL_NAME
,
predicates
,
function
(
err
,
ret
)
{
if
(
callback
!=
undefined
)
{
callback
(
err
,
ret
);
}
});
}
```
### batchInsert
batchInsert?(uri: string, valueBuckets: Array
<ValuesBucket>
, callback: AsyncCallback
<number>
): void;
insert生命周期回调,在数据库插入时回调
| 名称 | 参数类型 | 必填 | 说明 |
| ------------ | ------------------- | ---- | ---------------------- |
| uri | string | 是 | 指示要插入的数据的路径 |
| valueBuckets | Array
<ValuesBucket>
| 是 | 指示要插入的数据记录 |
**返回值:**
| 类型 | 说明 |
| ------ | -------------------- |
| number | 返回插入的数据记录数 |
**示例:**
```
js
import
rdb
from
'
@ohos.data.rdb
'
;
let
TBL_NAME
=
"
TBL00
"
;
batchInsert
(
uri
:
string
,
valueBuckets
,
callback
)
{
if
(
valueBuckets
==
null
||
valueBuckets
.
length
==
undefined
)
{
console
.
info
(
'
invalid valueBuckets
'
);
return
;
}
let
resultNum
=
valueBuckets
.
length
valueBuckets
.
forEach
(
vb
=>
{
rdbStore
.
insert
(
TBL_NAME
,
vb
,
function
(
err
,
ret
)
{
if
(
callback
!=
undefined
)
{
callback
(
err
,
resultNum
);
}
});
});
}
```
### getType
getType?(uri: string, callback: AsyncCallback
<string>
): void;
getType生命周期回调函数,获取给定URI对应的MIME类型时回调
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----- | ------ | ------ | ------ |
| uri | string | 是 | 指示要操作的数据的路径 |
**返回值:**
| 类型 | 说明 |
| ------ | ----------------------------------- |
| string | 返回与uri指定的数据匹配的MIME类型。 |
**示例:**
```
js
getType
(
uri
:
string
,
callback
)
{
// Specific functions need to be implemented by the user
let
ret
=
"
image
"
;
callback
(
err
,
ret
);
}
```
### getFileTypes
getFileTypes?(uri: string, mimeTypeFilter: string, callback: AsyncCallback
<Array
<
string
>
>): void;
getFileTypes生命周期回调,获取支持文件的MIME类型时回调
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------------- | ------ | ---- | -------------------------- |
| uri | string | 是 | 指示要获取的文件的路径 |
| mimeTypeFilter | string | 是 | 指示要获取的文件的MIME类型 |
**返回值:**
| 类型 | 说明 |
| -------------------------------------- | ------------------------ |
| Array
<string>
| 返回匹配的MIME类型数组 |
**示例:**
```
js
getFileTypes
(
uri
:
string
,
mimeTypeFilter
:
string
,
callback
)
{
// Specific functions need to be implemented by the user
let
ret
=
new
Array
(
"
type01
"
,
"
type02
"
,
"
type03
"
);
callback
(
err
,
ret
);
}
```
### normalizeUri
normalizeUri?(uri: string, callback: AsyncCallback
<string>
): void;
normalizeUri生命周期回调,给定uri转换为规范化uri时回调
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---- | ------ | ---- | --------------------- |
| uri | string | 是 | 指示要规范化的uri对象 |
**返回值:**
| 类型 | 说明 |
| ------ | ---------------------------------------------------- |
| string | 如果数据功能支持uri规范化或null,则返回规范化uri对象 |
**示例:**
```
js
normalizeUri
(
uri
:
string
,
callback
)
{
// Specific functions need to be implemented by the user
let
ret
=
"
normalize+
"
+
uri
;
callback
(
err
,
ret
);
}
```
### denormalizeUri
denormalizeUri?(uri: string, callback: AsyncCallback
<string>
): void;
将由denormalizeUri生命周期回调,给定规范化uri转换为非规范化uri时回调
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---- | ------ | ---- | --------------------- |
| uri | string | 是 | 指示要规范化的uri对象 |
**返回值:**
| 类型 | 说明 |
| ------ | --------------------------------------- |
| string | 如果反规范化成功,则返回反规范化uri对象 |
**示例:**
```
js
denormalizeUri
(
uri
:
string
,
callback
)
{
// Specific functions need to be implemented by the user
let
ret
=
"
denormalize+
"
+
uri
;
callback
(
err
,
ret
);
}
```
### openFile
openFile?(uri: string, mode: string, callback: AsyncCallback
<number>
): void;
将由openFile生命周期回调,在打开文件时回调
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---- | ------ | ---- | --------------------- |
| uri | string | 是 | 指示要规范化的uri对象 |
| mode | string | 是 | 指示文件打开模式‘rwt’ |
**返回值:**
| 类型 | 说明 |
| ------ | -------------- |
| number | 返回文件描述符 |
**示例:**
```
js
openFile
(
uri
:
string
,
mode
,
callback
)
{
// Specific functions need to be implemented by the user
let
fd
=
0
;
callback
(
err
,
fd
);
}
```
zh-cn/application-dev/reference/apis/js-apis-data-DataSharePredicates.md
0 → 100644
浏览文件 @
7aa2816d
# DataShare谓词
**DataShare谓词(DataSharePredicates)**
>**说明:**
>本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 导入模块
```
js
import
DataSharePredicates
from
'
./@ohos.data.DataSharePredicates
'
;
```
## equalTo
equalTo(
*field*
:
*string*
,
*value*
: ValueType): DataSharePredicates;
配置谓词以匹配数据类型为ValueType且值等于指定值的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | --------- | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
| value | ValueType | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
equalTo
(
"
NAME
"
,
"
Rose
"
)
```
## notEqualTo
notEqualTo(
*field*
:
*string*
,
*value*
: ValueType): DataSharePredicates;
配置谓词以匹配数据类型为ValueType且值不等于指定值的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | --------- | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
| value | ValueType | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
notEqualTo
(
"
NAME
"
,
"
Rose
"
)
```
## beginWrap
beginWrap(): DataSharePredicates;
向谓词添加左括号。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**返回值:**
| 类型 | 说明 |
| ------------------- | ---------------------- |
| DataSharePredicates | 返回带有左括号的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
equalTo
(
"
NAME
"
,
"
lisi
"
)
.
beginWrap
()
.
equalTo
(
"
AGE
"
,
18
)
.
or
()
.
equalTo
(
"
SALARY
"
,
200.5
)
.
endWrap
()
```
## endWrap
endWrap(): DataSharePredicates;
向谓词添加右括号。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**返回值:**
| 类型 | 说明 |
| ------------------- | ---------------------- |
| DataSharePredicates | 返回带有右括号的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
equalTo
(
"
NAME
"
,
"
lisi
"
)
.
beginWrap
()
.
equalTo
(
"
AGE
"
,
18
)
.
or
()
.
equalTo
(
"
SALARY
"
,
200.5
)
.
endWrap
()
```
## or
or(): DataSharePredicates;
将或条件添加到谓词中。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**返回值:**
| 类型 | 说明 |
| ------------------- | ---------------------- |
| DataSharePredicates | 返回带有或条件的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
equalTo
(
"
NAME
"
,
"
lisi
"
)
.
or
()
.
equalTo
(
"
NAME
"
,
"
Rose
"
)
```
## and
and(): DataSharePredicates;
将和条件添加到谓词中。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**返回值:**
| 类型 | 说明 |
| ------------------- | ---------------------- |
| DataSharePredicates | 返回带有和条件的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
equalTo
(
"
NAME
"
,
"
lisi
"
)
.
and
()
.
equalTo
(
"
SALARY
"
,
200.5
)
```
## contains
contains(
*field*
:
*string*
,
*value*
:
*string*
): DataSharePredicates;
配置谓词以匹配数据类型为String且value包含指定值的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
| value | string | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
contains
(
"
NAME
"
,
"
os
"
)
```
## beginsWith
beginsWith(
*field*
:
*string*
,
*value*
:
*string*
): DataSharePredicates;
配置谓词以匹配数据类型为String且值以指定字符串开头的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
| value | string | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
beginsWith
(
"
NAME
"
,
"
os
"
)
```
## endsWith
endsWith(
*field*
:
*string*
,
*value*
:
*string*
): DataSharePredicates;
配置谓词以匹配数据类型为String且值以指定字符串结尾的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
| value | string | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
endsWith
(
"
NAME
"
,
"
os
"
)
```
## isNull
isNull(
*field*
:
*string*
): DataSharePredicates;
配置谓词以匹配值为null的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ------------------ |
| field | string | 是 | 数据库表中的列名。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
isNull
(
"
NAME
"
)
```
## isNotNull
isNotNull(
*field*
:
*string*
): DataSharePredicates;
配置谓词以匹配值不为null的指定字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ------------------ |
| field | string | 是 | 数据库表中的列名。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
isNotNull
(
"
NAME
"
)
```
## like
like(
*field*
:
*string*
,
*value*
:
*string*
): DataSharePredicates;
配置谓词以匹配数据类型为string且值类似于指定字符串的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
| value | string | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
like
(
"
NAME
"
,
"
%os%
"
)
```
## unlike
unlike(
*field*
:
*string*
,
*value*
:
*string*
): DataSharePredicates;
配置谓词以匹配数据类型为string且值不类似于指定字符串的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
| value | string | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
unlike
(
"
NAME
"
,
"
%os%
"
)
```
## glob
glob(
*field*
:
*string*
,
*value*
:
*string*
): DataSharePredicates;
配置谓词匹配数据类型为string的指定字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
| value | string | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
glob
(
"
NAME
"
,
"
?h*g
"
)
```
## between
between(
*field*
:
*string*
,
*low*
: ValueType,
*high*
: ValueType): DataSharePredicates;
将谓词配置为匹配数据类型为ValueType且value在指定范围内的指定字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | --------- | ---- | ------------------------ |
| field | string | 是 | 数据库表中的列名。 |
| low | ValueType | 是 | 指示与谓词匹配的最小值。 |
| high | ValueType | 是 | 指示与谓词匹配的最大值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
between
(
"
AGE
"
,
10
,
50
)
```
## notBetween
notBetween(
*field*
:
*string*
,
*low*
: ValueType,
*high*
: ValueType): DataSharePredicates;
配置谓词以匹配数据类型为ValueType且value超出给定范围的指定字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | --------- | ---- | ------------------------ |
| field | string | 是 | 数据库表中的列名。 |
| low | ValueType | 是 | 指示与谓词匹配的最小值。 |
| high | ValueType | 是 | 指示与谓词匹配的最大值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
notBetween
(
"
AGE
"
,
10
,
50
)
```
## greaterThan
greaterThan(
*field*
:
*string*
,
*value*
: ValueType): DataSharePredicates;
配置谓词以匹配数据类型为ValueType且值大于指定值的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | --------- | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
|
*value*
| ValueType | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
greaterThan
(
"
AGE
"
,
10
)
```
## lessThan
lessThan(
*field*
:
*string*
,
*value*
: ValueType): DataSharePredicates;
配置谓词以匹配数据类型为valueType且value小于指定值的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | --------- | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
|
*value*
| ValueType | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
lessThan
(
"
AGE
"
,
50
)
```
## greaterThanOrEqualTo
greaterThanOrEqualTo(
*field*
:
*string*
,
*value*
: ValueType): DataSharePredicates;
配置谓词以匹配数据类型为ValueType且value大于或等于指定值的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | --------- | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
|
*value*
| ValueType | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
greaterThanOrEqualTo
(
"
AGE
"
,
10
)
```
## lessThanOrEqualTo
lessThanOrEqualTo(
*field*
:
*string*
,
*value*
: ValueType): DataSharePredicates;
配置谓词以匹配数据类型为ValueType且value小于或等于指定值的字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | --------- | ---- | ---------------------- |
| field | string | 是 | 数据库表中的列名。 |
|
*value*
| ValueType | 是 | 指示要与谓词匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
lessThanOrEqualTo
(
"
AGE
"
,
50
)
```
## orderByAsc
orderByAsc(
*field*
:
*string*
): DataSharePredicates;
配置谓词以匹配其值按升序排序的列。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ------------------ |
| field | string | 是 | 数据库表中的列名。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
orderByAsc
(
"
AGE
"
)
```
## orderByDesc
orderByDesc(
*field*
:
*string*
): DataSharePredicates;
配置谓词以匹配其值按降序排序的列。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ------------------ |
| field | string | 是 | 数据库表中的列名。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
orderByDesc
(
"
AGE
"
)
```
## distinct
distinct(): DataSharePredicates;
配置谓词以过滤重复记录并仅保留其中一个。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
equalTo
(
"
NAME
"
,
"
Rose
"
).
distinct
(
"
NAME
"
)
```
## limit
limit(
*total*
:
*number*
,
*offset*
:
*number*
): DataSharePredicates;
配置谓词以指定结果数和起始位置。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------ | ---- | -------------- |
| total | number | 是 | 指定结果数。 |
|
*offset*
| number | 是 | 指示起始位置。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
equalTo
(
"
NAME
"
,
"
Rose
"
).
limit
(
10
,
3
)
```
## groupBy
groupBy(
*fields*
: Array
<
*string*
>
): DataSharePredicates;
配置谓词按指定列分组查询结果。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | --------------- | ---- | -------------------- |
| fields | Array
<
*string*
>
| 是 | 指定分组依赖的列名。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
groupBy
([
"
AGE
"
,
"
NAME
"
])
```
## indexedBy
indexedBy(
*field*
:
*string*
): DataSharePredicates;
配置谓词以指定索引列。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | -------------- |
| field | string | 是 | 索引列的名称。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
indexedBy
(
"
SALARY_INDEX
"
)
```
## in
in(
*field*
:
*string*
,
*value*
: Array
<ValueType>
): DataSharePredicates;
配置谓词以匹配数据类型为ValueType数组且值在给定范围内的指定字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ---------------- | ---- | --------------------------------------- |
| field | string | 是 | 数据库表中的列名。 |
|
*value*
| Array
<ValueType>
| 是 | 以ValueType型数组形式指定的要匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
in
(
"
AGE
"
,
[
18
,
20
])
```
## notIn
notIn(
*field*
:
*string*
,
*value*
: Array
<ValueType>
): DataSharePredicates;
配置谓词以匹配数据类型为ValueType数组且值不在给定范围内的指定字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ---------------- | ---- | --------------------------------------- |
| field | string | 是 | 数据库表中的列名。 |
|
*value*
| Array
<ValueType>
| 是 | 以ValueType型数组形式指定的要匹配的值。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
notIn
(
"
NAME
"
,
[
"
Lisa
"
,
"
Rose
"
])
```
## prefixKey
prefixKey(
*prefix*
:
*string*
): DataSharePredicates;
配置谓词以匹配键前缀的指定字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | -------------- |
| prefix | string | 是 | 指定的键前缀。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
prefixKey
(
"
NAME
"
)
```
## inKeys
inKeys(
*keys*
: Array
<
*string*
>
): DataSharePredicates;
配置谓词以匹配键在给定范围内的指定字段。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | --------------- | ---- | ------------------ |
| inKeys | Array
<
*string*
>
| 是 | 给定范围的键数组。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | -------------------------- |
| DataSharePredicates | 返回与指定字段匹配的谓词。 |
**示例:**
```
js
let
dataSharePredicates
=
new
DataSharePredicates
()
dataSharePredicates
.
inKeys
([
"
Lisa
"
,
"
Rose
"
])
```
zh-cn/application-dev/reference/apis/js-apis-data-DataShareResultSet.md
0 → 100644
浏览文件 @
7aa2816d
# DataShare结果集
**DataShare结果集(DataShareResultSet)**
提供通过查询数据库生成的数据库结果集的访问方法。
>**说明:**
>本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 导入模块
```
js
import
DataShareResultSet
from
'
./@ohos.data.DataShareResultSet
'
;
```
## 使用说明
需要通过dataShare.query()获取DataShareResultSet对象。
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
import
DataSharePredicates
from
'
./@ohos.data.DataSharePredicates
'
;
query
()
```
## 属性
| 名称 | 参数类型 | 必填 | 说明 |
| ----------- | --------------- | ---- | -------------------------- |
| columnNames | Array
<
*string*
>
| 是 | 获取结果集中所有列的名称。 |
| columnCount |
*number*
| 是 | 获取结果集中的列数。 |
| rowCount |
*number*
| 是 | 获取结果集中的行数。 |
| isClosed |
*boolean*
| 是 | 检查当前结果集是否关闭。 |
## goToFirstRow
goToFirstRow():
*boolean*
;
转到结果集的第一行。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**返回值:**
| 类型 | 说明 |
| :-------- | --------------------------------------------- |
|
*boolean*
| 如果成功移动结果集,则为true;否则返回false。 |
**示例:**
```
js
let
isGoTOFirstRow
=
resultSet
.
goToFirstRow
();
console
.
info
(
'
resultSet.goToFirstRow:
'
+
isGoTOFirstRow
);
```
## goToLastRow
goToLastRow():
*boolean*
;
转到结果集的最后一行。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**返回值:**
| 类型 | 说明 |
| -------- | -------- |
|
*boolean*
| 如果成功移动结果集,则为true;否则返回false。 |
**示例:**
```
js
let
isGoToLastRow
=
resultSet
.
goToLastRow
();
console
.
info
(
'
resultSet.goToLastRow:
'
+
isGoToLastRow
);
```
## goToNextRow
goToNextRow():
*boolean*
;
转到结果集的下一行。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**返回值:**
| 类型 | 说明 |
| --------- | --------------------------------------------- |
|
*boolean*
| 如果成功移动结果集,则为true;否则返回false。 |
**示例:**
```
js
let
isGoToNextRow
=
resultSet
.
goToNextRow
();
console
.
info
(
'
resultSet.goToNextRow:
'
+
isGoToNextRow
);
```
## goToPreviousRow
goToPreviousRow(): boolean;
转到结果集的上一行。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**返回值:**
| 类型 | 说明 |
| --------- | --------------------------------------------- |
|
*boolean*
| 如果成功移动结果集,则为true;否则返回false。 |
**示例:**
```
js
let
isGoToPreviousRow
=
resultSet
.
goToPreviousRow
();
console
.
info
(
'
resultSet.goToPreviousRow:
'
+
isGoToPreviousRow
);
```
## goTo
goTo(offset:number): boolean;
向前或向后转至结果集的指定行,相对于其当前位置偏移。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
|
**参数名**
|
**类型**
|
**必填**
| 说明 |
| ---------- | -------- | -------- | ---------------------------- |
|
*offset*
| number | 是 | 表示相对于当前位置的偏移量。 |
**返回值:**
| 类型 | 说明 |
| --------- | --------------------------------------------- |
|
*boolean*
| 如果成功移动结果集,则为true;否则返回false。 |
**示例:**
```
js
let
goToNum
=
1
;
let
isGoTo
=
resultSet
.
goTo
(
goToNum
);
console
.
info
(
'
resultSet.goTo:
'
+
isGoTo
);
```
## goToRow
goToRow(position: number): boolean;
转到结果集的指定行。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
|
**参数名**
|
**类型**
|
**必填**
| 说明 |
| ---------- | -------- | -------- | ------------------------ |
|
*position*
| number | 是 | 表示要移动到的指定位置。 |
**返回值:**
| 类型 | 说明 |
| --------- | --------------------------------------------- |
|
*boolean*
| 如果成功移动结果集,则为true;否则返回false。 |
**示例:**
```
js
let
goToRowNum
=
2
let
isGoToRow
=
resultSet
.
goToRow
(
goToRowNum
);
console
.
info
(
'
resultSet.goToRow:
'
+
isGoToRow
);
```
## getBlob
getBlob(
*columnIndex*
:
*number*
): Uint8Array;
以字节数组的形式获取当前行中指定列的值。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
|
**参数名**
|
**类型**
|
**必填**
| 说明 |
| ------------- | -------- | -------- | ----------------------- |
|
*columnIndex*
| number | 是 | 指定的列索引,从0开始。 |
**返回值:**
| 类型 | 说明 |
| ------------ | -------------------------------- |
|
*Uint8Array*
| 以字节数组的形式返回指定列的值。 |
**示例:**
```
js
let
columnIndex
=
1
let
goToFirstRow
=
resultSet
.
goToFirstRow
();
let
getBlob
=
resultSet
.
getBlob
(
columnIndex
);
console
.
info
(
'
resultSet.getBlob:
'
+
getBlob
);
```
## getString
getString(
*columnIndex*
:
*number*
):
*string*
;
以字符串形式获取当前行中指定列的值。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
|
**参数名**
|
**类型**
|
**必填**
| 说明 |
| ------------- | -------- | -------- | ----------------------- |
|
*columnIndex*
| number | 是 | 指定的列索引,从0开始。 |
**返回值:**
| 类型 | 说明 |
| -------- | ---------------------------- |
|
*string*
| 以字符串形式返回指定列的值。 |
**示例:**
```
js
let
columnIndex
=
1
let
goToFirstRow
=
resultSet
.
goToFirstRow
();
let
getString
=
resultSet
.
getString
(
columnIndex
);
console
.
info
(
'
resultSet.getString:
'
+
getString
);
```
## getLong
getLong(
*columnIndex*
:
*number*
):
*number*
;
以Long形式获取当前行中指定列的值。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
|
**参数名**
|
**类型**
|
**必填**
| 说明 |
| ------------- | -------- | -------- | ----------------------- |
|
*columnIndex*
| number | 是 | 指定的列索引,从0开始。 |
**返回值:**
| 类型 | 说明 |
| -------- | -------------------------- |
|
*number*
| 以Long形式返回指定列的值。 |
**示例:**
```
js
let
columnIndex
=
1
let
goToFirstRow
=
resultSet
.
goToFirstRow
();
let
getLong
=
resultSet
.
getLong
(
columnIndex
);
console
.
info
(
'
resultSet.getLong:
'
+
getLong
);
```
## getDouble
getDouble(
*columnIndex*
:
*number*
):
*number*
;
以double形式获取当前行中指定列的值。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
|
**参数名**
|
**类型**
|
**必填**
| 说明 |
| ------------- | -------- | -------- | ----------------------- |
|
*columnIndex*
| number | 是 | 指定的列索引,从0开始。 |
**返回值:**
| 类型 | 说明 |
| -------- | ---------------------------- |
|
*number*
| 以double形式返回指定列的值。 |
**示例:**
```
js
let
columnIndex
=
1
let
goToFirstRow
=
resultSet
.
goToFirstRow
();
let
getDouble
=
resultSet
.
getDouble
(
columnIndex
);
console
.
info
(
'
resultSet.getDouble:
'
+
getDouble
);
```
## close
close():
*void*
;
关闭结果集。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**示例:**
```
js
resultSet
.
close
();
```
## getColumnIndex
getColumnIndex(
*columnName*
:
*string*
):
*number*
;
根据指定的列名获取列索引。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
|
**参数名**
|
**类型**
|
**必填**
| 说明 |
| ------------ | -------- | -------- | -------------------------- |
|
*columnName*
| string | 是 | 表示结果集中指定列的名称。 |
**返回值:**
| 类型 | 说明 |
| -------- | ------------------ |
|
*number*
| 返回指定列的索引。 |
**示例:**
```
js
let
ColumnName
=
"
name
"
let
getColumnIndex
=
resultSet
.
getColumnIndex
(
ColumnName
)
console
.
info
(
'
resultSet.getColumnIndex:
'
+
getColumnIndex
);
```
## getColumnName
getColumnName(
*columnIndex*
:
*number*
):
*string*
;
根据指定的列索引获取列名。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
|
**参数名**
|
**类型**
|
**必填**
| 说明 |
| ------------- | -------- | -------- | -------------------------- |
|
*columnIndex*
| number | 是 | 表示结果集中指定列的索引。 |
**返回值:**
| 类型 | 说明 |
| -------- | ------------------ |
|
*string*
| 返回指定列的名称。 |
**示例:**
```
js
let
columnIndex
=
1
let
getColumnName
=
resultSet
.
getColumnName
(
columnIndex
)
console
.
info
(
'
resultSet.getColumnName:
'
+
getColumnName
);
```
## getDataType
getDataType(
*columnIndex*
:
*number*
): DataType;
获取指定列的数据类型。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
**参数:**
|
**参数名**
|
**类型**
|
**必填**
| 说明 |
| ------------- | -------- | -------- | -------------------------- |
|
*columnIndex*
| number | 是 | 表示结果集中指定列的索引。 |
**返回值:**
| 类型 | 说明 |
| ---------- | ------------------ |
|
*DataType*
| 返回指定列的类型。 |
**示例:**
```
js
let
columnIndex
=
1
;
let
getDataType
=
resultSet
.
getDataType
(
columnIndex
);
console
.
info
(
'
resultSet.getDataType:
'
+
getDataType
);
```
## DataType
用于表示数据类型。
只能被内部应用使用。
**系统能力:**
SystemCapability.DistributedDataManager.DataShare.Core。
| 名称 | 默认值 | 说明 |
| ----------- | ------ | -------------------- |
| TYPE_NULL | 0 | 表示值类型为空。 |
| TYPE_LONG | 1 | 表示值类型为Long。 |
| TYPE_DOUBLE | 2 | 表示值类型为Double。 |
| TYPE_STRING | 3 | 表示值类型为String。 |
| TYPE_BLOB | 4 | 表示值类型为Blob。 |
zh-cn/application-dev/reference/apis/js-apis-data-ValuesBucket.md
0 → 100644
浏览文件 @
7aa2816d
# ValuesBucket
**数据集(ValuesBucket)**
>**说明:**
>本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 导入模块
```
js
import
{
ValueType
}
from
'
./@ohos.data.ValuesBucket
'
;
import
{
ValuesBucket
}
from
'
./@ohos.data.ValuesBucket
'
;
```
## ValueType
用于表示允许的数据字段类型。
| 名称 | 说明 |
| --------- | -------------------- |
|
*number*
| 表示值类型为数字。 |
|
*string*
| 表示值类型为字符串。 |
|
*boolean*
| 表示值类型为布尔值。 |
## ValuesBucket
用于存储键值对。
| 名称 | 参数类型 | 必填 | 说明 |
| ------------- | ------------------------------- | ---- | ---------------- |
| [key: string] | ValueType
\|
Uint8Array
\|
null | 是 | 用于存储键值对。 |
zh-cn/application-dev/reference/apis/js-apis-data-dataShare.md
0 → 100644
浏览文件 @
7aa2816d
# 数据共享
**数据共享(Data Share)**
是应用管理自身和其他应用存储数据的访问,提供与其他应用共享数据的方法,既支持同个设备上应用之间的数据共享,也支持跨设备上应用之间的数据共享。
>**说明:**
>本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 导入模块
```
js
import
Ability
from
'
@ohos.application.Ability
'
import
dataShare
from
'
@ohos.data.dataShare
'
```
## dataShare.createDataShareHelper
createDataShareHelper(context: Context, uri: string, callback: AsyncCallback
<
DataShareHelper
>
): void;
createDataShareHelper(context: Context, uri: string): Promise
<
DataShareHelper
>
;
创建DataShare工具类,返回helper对象,用于连接服务端,并通过callback方式返回,此方法为异步方法。
**系统能力:**
以下各项对应的系统能力均为SystemCapability.DistributedDataManager.DataShare.Consumer。
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------------------------------------------------------- | ---- | ------------------------------------------------------------ |
| context | Context | 是 | 应用的上下文环境。 |
| uri | string | 是 | 指示要打开的文件的路径。 |
| callback | AsyncCallback
<
[DataShareHelper](#DataShareHelper)
>
| 是 | DataShareHelper实例创建时调用的回调,返回KVManager对象实例。 |
**示例:**
```
js
let
context
=
this
.
context
;
let
dseUri
=
(
"
datashare:///com.samples.datasharetest.DataShare
"
);
await
dataShare
.
createDataShareHelper
(
this
.
context
,
dseUri
,
(
err
,
data
)
=>
{
if
(
err
.
code
!=
0
)
{
console
.
info
(
"
createDataShareHelper fail, err =
"
+
err
);
}
erse
{
let
dataShareHelper
=
data
;
}
});
```
## DataShareHelper
### openFile
openFile(uri: string, mode: string, callback: AsyncCallback
<number>
): void
在指定的远程路径中打开文件(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | --------------------- | ---- | ---------------------------------- |
| uri | string | 是 | 指示要打开的文件的路径。 |
| mode | string | 是 | 指示文件打开模式‘rwt’。 |
| callback | AsyncCallback
<number>
| 是 | 被指定的回调方法,返回文件描述符。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
openFile
(
uri
,
"
rwt
"
,
(
err
,
data
)
=>
{
if
(
err
.
code
!=
0
)
{
console
.
info
(
"
createDataShareHelper fail, err =
"
+
err
);
}
erse
{
let
fd
=
data
;
}
});
```
### openFile
openFile(uri: string, mode: string): Promise
<number>
在指定的远程路径中打开文件(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---- | ------ | ---- | ----------------------- |
| uri | string | 是 | 指示要打开的文件的路径 |
| mode | string | 是 | 指示文件打开模式‘rwt’。 |
**返回值:**
| 类型 | 说明 |
| --------------- | ---------------- |
| Promise
<number>
| 返回文件描述符。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
openFile
(
uri
,
"
rwt
"
).
then
((
data
)
=>
{
let
fd
=
data
;
}).
catch
((
err
)
=>
{
console
.
info
(
"
createDataShareHelper fail, err =
"
+
err
);
})
```
### on('dataChange')
on(type: 'dataChange', uri: string, callback: AsyncCallback
\<
void>): void
注册观察者以观察给定uri指定的数据callback通知。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | ------------------------ |
| type | string | 是 | 数据更改。 |
| uri | string | 是 | 指示要操作的数据的路径。 |
| callback | AsyncCallback
\<
void> | 是 | 指示数据更改时的回调。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
on
(
"
dataChange
"
,
uri
,
onCallback
);
export
function
onCallback
()
{
console
.
info
(
"
**** Observer on callback ****
"
);
}
```
### off('dataChange')
off(type: 'dataChange', uri: string, callback?: AsyncCallback
\<
void>): void
注消观察者以停止观察给定uri指定的数据callback通知。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | ------------------------ |
| type | string | 是 | 数据更改。 |
| uri | string | 是 | 指示要操作的数据的路径。 |
| callback | AsyncCallback
\<
void> | 否 | 指示已注册的回调。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
off
(
"
dataChange
"
,
uri
,
offCallback
);
export
function
offCallback
()
{
console
.
info
(
"
**** Observer off callback ****
"
);
}
```
### getType
getType(uri: string, callback: AsyncCallback
\<
string>): void
获取给定URI指定数据的MIME类型(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | --------------------------------------------- |
| uri | string | 是 | 指示要操作的数据的路径。 |
| callback | AsyncCallback
\<
string> | 是 | 回调方法,返回与uri指定的数据匹配的MIME类型。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
getType
(
uri
,(
err
,
data
)
=>
{
if
(
err
.
code
!=
0
){
console
.
log
(
"
getType err, err:
"
+
JSON
.
stringify
(
err
));
}
else
{
console
.
log
(
"
getType end, data:
"
+
JSON
.
stringify
(
data
));
let
result
=
data
;
}
});
```
### getType
getType(uri: string): Promise
\<
string>
获取给定URI指定数据的MIME类型(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---- | ------ | ---- | ------------------------ |
| uri | string | 是 | 指示要操作的数据的路径。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | ----------------------------------- |
| Promise
\<
string> | 返回与uri指定的数据匹配的MIME类型。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
getType
(
uri
).
then
((
data
)
=>
{
console
.
log
(
"
getType end, data:
"
+
data
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
getType end, err:
"
+
err
);
});
```
### getFileTypes
getFileTypes(uri: string, mimeTypeFilter: string, callback: AsyncCallback
<Array
\<
string
>
>): void
获取支持的文件的MIME类型(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------------- | ------------------------------ | ---- | ---------------------------------- |
| uri | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | string | 是 | 指示要获取的文件的MIME类型。 |
| callback | AsyncCallback
\<
Array
\<
string>> | 是 | 回调方法,返回匹配的MIME类型数组。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
mimeTypeFilter
=
"
image/*
"
;
dataShareHelper
.
getFileTypes
(
uri
,
mimeTypeFilter
,
(
err
,
data
)
=>
{
if
(
err
.
code
!=
0
){
console
.
log
(
"
dataShareHelper end, err:
"
+
err
);
}
else
{
console
.
log
(
"
dataShareHelper end, data:
"
+
data
);
}
});
```
### getFileTypes
getFileTypes(uri: string, mimeTypeFilter: string): Promise
\<
Array
\<
string>>
获取支持的文件的MIME类型(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------------- | ------ | ---- | ---------------------------- |
| uri | string | 是 | 指示要获取的文件的路径。 |
| mimeTypeFilter | string | 是 | 指示要获取的文件的MIME类型。 |
**返回值:**
| 类型 | 说明 |
| ------------------------ | ------------------------ |
| Promise
\<
Array
\<
string>> | 返回匹配的MIME类型数组。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
mimeTypeFilter
=
"
image/*
"
;
dataShareHelper
.
getFileTypes
(
uri
,
mimeTypeFilter
).
then
((
data
)
=>
{
console
.
log
(
"
dataShareHelper end, data:
"
+
data
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
dataShareHelper end, err:
"
+
err
);
});
```
### normalizeUri
normalizeUri(uri: string, callback: AsyncCallback
\<
string>): void
将引用数据功能的给定uri转换为规范化uri(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ------------------------------------------------------------ |
| uri | string | 是 | 指示要规范化的uri对象。 |
| callback | AsyncCallback
\<
string> | 是 | 回调方法。如果数据功能支持uri规范化或null,则返回规范化uri对象。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
normalizeUri
(
uri
,(
err
,
data
)
=>
{
if
(
err
.
code
!=
0
){
console
.
log
(
"
normalizeUri end, err:
"
+
err
);
}
else
{
console
.
log
(
"
normalizeUri =
"
+
data
);
}
});
```
### normalizeUri
normalizeUri(uri: string): Promise
\<
string>
将引用数据功能的给定uri转换为规范化uri(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---- | ------ | ---- | ----------------------- |
| uri | string | 是 | 指示要规范化的uri对象。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | ------------------------------------------------------ |
| Promise
\<
string> | 如果数据功能支持uri规范化或null,则返回规范化uri对象。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
normalizeUri
(
uri
).
then
((
data
)
=>
{
console
.
log
(
"
normalizeUri =
"
+
data
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
normalizeUri end, err:
"
+
err
);
});
```
### denormalizeUri
denormalizeUri(uri: string, callback: AsyncCallback
\<
string>): void
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | --------------------------------------------------- |
| uri | string | 是 | 指示要规范化的uri对象。 |
| callback | AsyncCallback
\<
string> | 是 | 回调方法。如果反规范化成功,则返回反规范化uri对象。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
denormalizeUri
(
uri
,(
err
,
data
)
=>
{
if
(
err
.
code
!=
0
){
console
.
log
(
"
denormalizeUri end, err:
"
+
err
);
}
else
{
console
.
log
(
"
denormalizeUri =
"
+
data
);
}
});
```
### denormalizeUri
denormalizeUri(uri: string): Promise
\<
string>
将由normalizeUri(uri)生成的给定规范化uri转换为非规范化uri(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---- | ------ | ---- | ----------------------- |
| uri | string | 是 | 指示要规范化的uri对象。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | ----------------------------------------- |
| Promise
\<
string> | 如果反规范化成功,则返回反规范化uri对象。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
denormalizeUri
(
uri
).
then
((
data
)
=>
{
console
.
log
(
"
denormalizeUri =
"
+
data
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
denormalizeUri end, err:
"
+
err
);
});
```
### notifyChange
notifyChange(uri: string, callback: AsyncCallback
\<
void>): void
通知已注册的观察者uri指定的数据资源的更改(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | -------------------- | ---- | ------------------------ |
| uri | string | 是 | 指示要操作的数据的路径。 |
| callback | AsyncCallback
\<
void> | 是 | 回调方法。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
dataShareHelper
.
notifyChange
(
uri
,()
=>
{
console
.
log
(
"
notifyChange!!!!!!!
"
);
});
```
### notifyChange
notifyChange(uri: string): Promise
\<
void>
通知已注册的观察者uri指定的数据资源的更改(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---- | ------ | ---- | ------------------------ |
| uri | string | 是 | 指示要操作的数据的路径。 |
**返回值:**
| 类型 | 说明 |
| -------------- | --------------------- |
| Promise
\<
void> | 返回值为Promise对象。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
await
dataShareHelper
.
notifyChange
(
uri
);
```
### insert
insert(uri: string, value: ValuesBucket, callback: AsyncCallback
\<
number>): void
将单个数据记录插入数据库(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | ------------------------------------------------------ |
| uri | string | 是 | 指示要插入的数据的路径。 |
| value | ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
| callback | AsyncCallback
\<
number> | 是 | 回调方法,返回插入数据记录的索引。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
const
valueBucket
=
{
"
name
"
:
"
rose
"
,
"
age
"
:
22
,
"
salary
"
:
200.5
,
"
blobType
"
:
u8
,
}
dataShareHelper
.
insert
(
uri
,
valueBucket
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
### insert
insert(uri: string, value: ValuesBucket): Promise
\<
number>
将单个数据记录插入数据库(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ----- | ------------ | ---- | ------------------------------------------------------ |
| uri | string | 是 | 指示要插入的数据的路径。 |
| value | ValuesBucket | 是 | 指示要插入的数据记录。如果此参数为空,将插入一个空行。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | ------------------------ |
| Promise
\<
number> | 返回插入数据记录的索引。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
const
valueBucket
=
{
"
name
"
:
"
rose1
"
,
"
age
"
:
221
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,
}
dataShareHelper
.
insert
(
uri
,
valueBucket
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>insertCallback=======================>
"
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
insert end, err:
"
+
err
);
});
```
### batchInsert
batchInsert(uri: string, values: Array
\<
ValuesBucket>, callback: AsyncCallback
\<
number>): void
插入数据库(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| -------- | ---------------------- | ---- | -------------------------------- |
| uri | string | 是 | 指示要插入的数据的路径。 |
| values | Array
\<
ValuesBucket> | 是 | 指示要插入的数据记录。 |
| callback | AsyncCallback
\<
number> | 是 | 回调方法。返回插入的数据记录数。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
cars
=
new
Array
({
"
name
"
:
"
roe11
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe12
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe13
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,})
dataShareHelper
.
batchInsert
(
uri
,
cars
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
### batchInsert
batchInsert(uri: string, values: Array
\<
ValuesBucket>): Promise
\<
number>
将多个数据记录插入数据库(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ------ | -------------------- | ---- | ------------------------ |
| uri | string | 是 | 指示要插入的数据的路径。 |
| values | Array
\<
ValuesBucket> | 是 | 指示要插入的数据记录。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | ---------------------- |
| Promise
\<
number> | 返回插入的数据记录数。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
cars
=
new
Array
({
"
name
"
:
"
roe11
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe12
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,},
{
"
name
"
:
"
roe13
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,})
dataShareHelper
.
batchInsert
(
uri
,
cars
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>batchInsertCallback=======================>
"
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
batchInsert end, err:
"
+
err
);
});
```
### delete
delete(uri: string, predicates: DataSharePredicates, callback: AsyncCallback
\<
number>): void
从数据库中删除一个或多个数据记录(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ---------------------- | ---- | ------------------------------------------------ |
| uri | string | 是 | 指示要删除的数据的路径。 |
| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| callback | AsyncCallback
\<
number> | 是 | 回调方法。返回已删除的数据记录数。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
da
=
new
dataShare
.
DataSharePredicates
();
da
.
equalTo
(
"
name
"
,
"
ZhangSan
"
);
dataShareHelper
.
delete
(
uri
,
da
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
### delete
delete(uri: string, predicates: DataSharePredicates): Promise
\<
number>
从数据库中删除一个或多个数据记录(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ------------------- | ---- | ------------------------------------------------ |
| uri | string | 是 | 指示要删除的数据的路径。 |
| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | ------------------------ |
| Promise
\<
number> | 返回已删除的数据记录数。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
da
=
new
dataShare
.
DataSharePredicates
();
da
.
equalTo
(
"
name
"
,
"
ZhangSan
"
);
dataShareHelper
.
delete
(
uri
,
da
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>deleteCallback=======================>
"
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
delete end, err:
"
+
err
);
});
```
### update
update(uri: string, predicates: DataSharePredicates, value: ValuesBucket, callback: AsyncCallback
<number>
): void
更新数据库中的数据记录(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ---------------------- | ---- | ------------------------------------------------ |
| uri | string | 是 | 指示要更新的数据的路径。 |
| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| value | ValuesBucket | 是 | 指示要更新的数据。 |
| callback | AsyncCallback
\<
number> | 是 | 回调方法,返回更新的数据记录数。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
da
=
new
dataShare
.
DataSharePredicates
();
da
.
equalTo
(
"
name
"
,
"
ZhangSan
"
);
const
va
=
{
"
name
"
:
"
roe1
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,
}
dataShareHelper
.
update
(
uri
,
da
,
va
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
### update
update(uri: string, predicates: DataSharePredicates, value: ValuesBucket): Promise
<number>
更新数据库中的数据记录(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ------------------- | ---- | ------------------------------------------------ |
| uri | string | 是 | 指示要更新的数据的路径。 |
| predicates | DataSharePredicates | 是 | 指示要更新的数据。 |
| value | ValuesBucket | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | -------------------------------------------- |
| Promise
\<
number> | 返回值为Promise对象,Promise中包含应用信息。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
da
=
new
dataShare
.
DataSharePredicates
();
da
.
equalTo
(
"
name
"
,
"
ZhangSan
"
);
const
va
=
{
"
name
"
:
"
roe1
"
,
"
age
"
:
21
,
"
salary
"
:
20.5
,
"
blobType
"
:
u8
,
}
dataShareHelper
.
update
(
uri
,
da
,
va
,
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>updateCallback=======================>
"
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
update end, err:
"
+
err
);
});
```
### query
query(uri: string, predicates: DataSharePredicates, columns: Array
<string>
, callback: AsyncCallback
<DataShareResultSet>
): void
查询数据库中的数据(callback形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ---------------------------------- | ---- | ------------------------------------------------ |
| uri | string | 是 | 指示要查询的数据的路径。 |
| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| columns | Array
<string>
| 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
| callback | AsyncCallback
\<
DataShareResultSet> | 是 | 回调方法,返回查询结果。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
columns
=
[
"
*
"
]
;
let
da
=
new
dataShare
.
DataSharePredicates
();
da
.
equalTo
(
"
name
"
,
"
ZhangSan
"
);
dataShareHelper
.
query
(
uri
,
da
,
columns
,
(
err
,
data
)
=>
{
console
.
info
(
"
==========================>Called=======================>
"
);
});
```
### query
query(uri: string, predicates: DataSharePredicates, columns: Array
<string>
): Promise
<DataShareResultSet>
查询数据库中的数据(Promise形式)。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ------------------- | ---- | ------------------------------------------------ |
| uri | string | 是 | 指示要查询的数据的路径。 |
| predicates | DataSharePredicates | 是 | 指示筛选条件。当此参数为null时,应定义处理逻辑。 |
| columns | Array
<string>
| 是 | 指示要查询的列。如果此参数为空,则查询所有列。 |
**返回值:**
| 类型 | 说明 |
| ---------------------------- | -------------- |
| Promise
\<
DataShareResultSet> | 返回查询结果。 |
**示例:**
```
js
import
dataShare
from
'
@ohos.data.dataShare
'
;
let
uri
=
"
datashare:///com.samples.datasharetest.DataShare
"
;
let
columns
=
[
"
*
"
]
;
let
da
=
new
dataShare
.
DataSharePredicates
();
da
.
equalTo
(
"
name
"
,
"
ZhangSan
"
);
dataShareHelper
.
query
(
uri
,
da
,
columns
,
).
then
((
data
)
=>
{
console
.
info
(
"
==========================>queryCallback=======================>
"
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
query end, err:
"
+
err
);
});
```
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录