1,JQL
,全称 javascript query language,是一种js方式操作数据库的规范。
2,例子
const db = uniCloud.database()
// 使用`jql`查询list表内`name`字段值为`hello-uni-app`的记录
db.collection('list')
.where('name == "hello-uni-app"')
.get()
.then((res)=>{
// res 为数据库查询结果
}).catch((err)=>{
// err.message 错误信息
// err.code 错误码
})
3,
你可以在以下几种场景使用JQL
- 客户端clientDB,包括js内以及unicloud-db组件内
- HBuilderX JQL数据库管理器,
- 启用了jql扩展的云函数,
4,jql语句内云端环境变量 可以在云函数内使用,校验ip 也可以在前端组件unicloud-db 组件的where 中使用 user_id == $cloudEnv_uid ,数据库的id 等于 客户端上传的id
参数名 | 说明 |
---|---|
$cloudEnv_uid | 用户uid,依赖uni-id |
$cloudEnv_now | 服务器时间戳 |
$cloudEnv_clientIP | 当前客户端IP |
5,#jql条件语句的运算符 加java 类似不用记
6,where 条件 格式是‘ uid == auth.uid && age > 10 ’一个参数就是'article_id=="1"'
当不够用的时候可以使用 传统的nosql 。nosql是js方法+json方式的参数
oneday: dbCmd.gte(this.fristdaystamp).and(dbCmd.lte(this.lastdaystamp)), //得到一个月的记录
nosql 合适用于客户端和云端 jql也是 不过要选择管理依赖 jql