HarmonyOS NEXT:构造关系型数据库规范-DataAbility谓词

DataAbility谓词用于构造关系型数据库的谓词,提供用于实现不同查询方法的谓词。

本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import { dataAbility } from '@kit.ArkData';

dataAbility.createRdbPredicates

createRdbPredicates(name: string, dataAbilityPredicates: DataAbilityPredicates): rdb.RdbPredicates

通过表名和DataAbility谓词对象创建Rdb谓词对象。

系统能力: SystemCapability.DistributedDataManager.DataShare.Core。

参数:

参数名 类型 必填 说明
name string 数据库表中的表名。
dataAbilityPredicates DataAbilityPredicates DataAbility谓词。

返回值:

类型 说明
rdb.RdbPredicates 返回RdbPredicates对象。

示例:

let dataAbilityPredicates = new dataAbility.DataAbilityPredicates()
dataAbilityPredicates.equalTo("NAME", "Rose")
// EMPLOYEE是使用关系型数据库创建的表。
let predicates = dataAbility.createRdbPredicates("EMPLOYEE", dataAbilityPredicates)

DataAbilityPredicates

提供用于实现不同查询方法的谓词。

初始化:

let dataAbilityPredicates = new dataAbility.DataAbilityPredicates()

equalTo

equalTo(field: string, value: ValueType): DataAbilityPredicates

配置谓词以匹配数据,数据的指定字段数据类型为ValueType且值等于指定值。

此方法类似于SQL语句的“=”。

系统能力: SystemCapability.DistributedDataManager.DataShare.Core。

参数:

参数名 类型 必填 说明
field string 数据库表中的列名。
value ValueType 指示要与谓词匹配的值。

返回值:

类型 说明
DataAbilityPredicates 返回与指定字段匹配的谓词。

示例:

dataAbilityPredicates.equalTo("NAME", "lisi")

notEqualTo

notEqualTo(field: string, value: ValueType): DataAbilityPredicates

配置谓词以匹配数据,数据的指定字段数据类型为ValueType且不等于指定值。

此方法类似于SQL语句的“!=”。

系统能力: SystemCapability.DistributedDataManager.DataShare.Core。

参数:

参数名 类型 必填 说明
field string 数据库表中的列名。
value ValueType 指示要与谓词匹配的值。

返回值:

类型 说明
DataAbilityPredicates 返回与指定字段匹配的谓词。

示例:

dataAbilityPredicates.notEqualTo("NAME", "lisi")

beginWrap

beginWrap(): DataAbilityPredicates

在谓词中添加左括号。此方法类似于SQL语句的“(”,需要与endWrap一起使用。

系统能力: SystemCapability.DistributedDataManager.DataShare.Core。

返回值:

类型 说明
DataAbilityPredicates 返回带有左括号的DataAbility谓词。

示例:

dataAbilityPredicates.equalTo("NAME", "lisi")
    .beginWrap()
    .equalTo("AGE", 18)
    .or()
    .equalTo("SALARY", 200.5)
    .endWrap()

endWrap

endWrap(): DataAbilityPredicates

在谓词中添加右括号。此方法类似于SQL语句的“)”,需要和beginWrap一起使用。

系统能力: SystemCapability.DistributedDataManager.DataShare.Core。

返回值:

类型 说明
DataAbilityPredicates 返回带有右括号的DataAbility谓词。

示例:

dataAbilityPredicates.equalTo("NAME", "lisi")
    .beginWrap()
    .equalTo("AGE", 18)
    .or()
    .equalTo("SALARY", 200.5)
    .endWrap()

or

or(): DataAbilityPredicates

将或条件添加到谓词中。

此方法类似于SQL语句“or”。

系统能力: SystemCapability.DistributedDataManager.DataShare.Core。

返回值:

类型 说明
DataAbilityPredicates 返回带有或条件的DataAbility谓词。

示例:

dataAbilityPredicates.equalTo("NAME", "Lisa")
    .or()
    .equalTo("NAME", "Rose")

and

and(): DataAbilityPredicates

将和条件添加到谓词中。

系统能力: SystemCapability.DistributedDataManager.DataShare.Core。

返回值:

类型 说明
DataAbilityPredicates 返回带有和条件的DataAbility谓词。

示例:

dataAbilityPredicates.equalTo("N
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值