apiCloud中的数据库操作mcm-js-sdk的使用
1.引入js
<!-- 引入mcm-js-sdk Begin -->
<script type="text/javascript" src="../plugin/mcm-js-sdk/APICloud-rest-SHA1.js"></script>
<script type="text/javascript" src="../plugin/mcm-js-sdk/APICloud-rest.js"></script>
<script type="text/javascript" src="../plugin/mcm-js-sdk/SHA1.js"></script>
<!-- 引入mcm-js-sdk END -->
2.生成对象
var client = new Resource("xxx", "xxx");
var Model = client.Factory("user");
3.获取数据get
Model.get({"_id": '57eb89ad074073e11321e0d3'}, function (ret,err) {alert("Model get:"+JSON.stringify(ret));});
4.添加保存数据save
Model.save({"username": "xiaoming","password": "123456","email": "xiaoming@126.com"}, function(ret,err){if(err){alert(JSON.stringify(ret));}else{alert(JSON.stringify(ret));}})
Model.save({"_id":"57ec73e87813d7a36cc9d9ec"},{"username":"Dongcheng"}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
5.删除对象delete
Model.delete({"_id":"57ec73e87813d7a36cc9d9ec"},function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
6.批量操作
var client = new Resource("xxx", "xxx");client.batch([{"method": "POST","path": "/mcm/api/user","body": {"username": "user1","password": "123456"}},{"method": "POST","path": "/mcm/api/user","body": {"username": "user2","password": "123456"}}], function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
7.操作符
名称 说明
$inc 增加字段的值指定的数量
$mul 增加字段的值乘以指定的数量
$set 在文档中设置一个字段的值。
$min 仅更新字段如果指定的值小于现有的字段值。
$max 仅更新字段如果指定的值大于现有的字段值。
$push 增加一个项到数组的尾部
$pushAll增加多个项到数组的尾
$pull 删除一个项从数组当中
$pullAll删除多个项从数组中
inc
Model.save({"_id":"57eb82c5abca25f4649f1d22"},{"$inc": { money: +10},"username":"jack"}, function(ret,err){ // 指定值增加10if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
mul
Model.save({"_id":"57eb82c5abca25f4649f1d22"},{"$mul": { money:1.25},"username":"jack"}, function(ret,err){ // 指定乘以1.25if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
set 复制设置
Model.save({"_id":"57eb82c5abca25f4649f1d22"},{"$set": {username: "xi",details: {model: "14Q3",make: "xyz"},tags: ["coats","outerwear","clothing"]}}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
min 操作符更新字段的值为一个指定的值,如果指定的值小于指定字段的当前值
Model.save({"_id":"57eb82c5abca25f4649f1d22"},{"$min": { "money": 10 }}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
max操作符更新字段的值指定的值,如果指定的值大于字段的当前值
Model.save({"_id":"57eb82c5abca25f4649f1d22"},{"$max": { "money": 150 }}, function(ret,err){ // 指定的值为150if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
push,pushAll,pull,pullAll略。
8.字段过滤
Model.query({filter:{fields:{"username": true, "email": true}//或者["username","email"]}}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
9.条数过滤(Limit filter)
Model.query({filter:{limit:2,fields:{"username": true, "email": true}//或者["username","email"]}}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
10.排序(Order filter)
Model.query({filter:{"order": "money DESC",limit:2,fields:{"username": true, "email": true ,"money":true}//或者["username","email"]}}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
11.跳过(Skip filter)
Model.query({filter:{"skip":3,"order": "money ASC",limit:2,fields:{"username": true, "email": true ,"money":true}//或者["username","email"]}}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
12.条件过滤(Where filter)
操作符 说明
and 逻辑与
or 逻辑或
gt,gte 大于(>),大于或等于(> =)。只有效数值和日期值
lt,lte 小于(<),小于或等于(< =)。只有效数值和日期值
between 在…之间
inq,nin 在/不在一个数组之内
near 地理位置,返回最接近点,按距离的顺序排序
ne 不等于(!=)
like,nlike like/not like 操作符返回符合正则表达式的数据
Model.query({filter:{"where":{"money":"150"}}}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}});
Model.query({filter:{"where":{"money":{"gt":100}}}}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}});
Model.query({filter:{"where": {"and": [{"username": "xi"},{"money":{"gt":100}}]}}}, function(ret,err){if(err){alert(JSON.stringify(err));}else{alert(JSON.stringify(ret));}})
更多内容参考官网 http://docs.apicloud.com/Cloud-API/data-cloud-api
转载于:https://www.cnblogs.com/jiqing9006/p/5917512.html
apiCloud中的数据库操作mcm-js-sdk的使用相关推荐
- Node.js 连接 MySQL 并进行数据库操作 –node.js 开发指南
Node.js是一套用来编写高性能网络服务器的JavaScript工具包 通常在NodeJS开发中我们经常涉及到操作数据库,尤其是 MySQL ,作为应用最为广泛的开源数据库则成为我们的首选,本篇就来 ...
- android中的数据库操作(SQLite)
android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库 an ...
- php封装的数据库操作文件夹,PHP中对数据库操作的封装_php
现在我们把其封装在dbfz.inc中,其设计如下: $#@60;? class dbInterface{ var $dbID=1; //用于确定当前操作的数据库,当dbID为1代表mysql,当为 2 ...
- php定义数据表类,phpwind中的数据库操作类
phpwind中的数据库操作类 2021-01-22 20:12:15141 /*来源:phpwind.net*/ ClassDB{ var$query_num=0; functionDB($dbho ...
- phpwind database.php,phpwind中的数据库操作类
phpwind中的数据库操作类 更新时间:2007年01月02日 00:00:00 作者: /*来源:phpwind.net*/ Class DB { var $query_num = 0; fu ...
- wp-db.php,WordPress中的数据库操作类wp-db.php
版权:转载 来源:互联网 WordPress中的数据库操作类wp-db.php的原型是ezSQL.官方网站: http://php.justinvincent.com ezSQL支持对如下数据库的操作 ...
- android中的数据库操作
android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库 andr ...
- 一文详解python中的数据库操作
python中的数据库操作 一.数据库编程接口 1. 连接对象 二.使用内置的SQLite 1.创建数据库文件 2.操作SQLite 三.MySql数据库的使用 3.1 安装MySql 3.2 设置环 ...
- PHP中对数据库操作的封装
在动态网面设计中很多都要涉及到对数据库的操作,但是有时跟据需要而改用其它后台数据库,就需要大量修改程序.这是一件枯燥.费时而且容易出错的功作.其实我们可以用PHP中的类来实现对数据库操作的封装,从而使 ...
最新文章
- python音乐的数据抓取与分析_Python练习之抓取QQ音乐数据
- git远程仓库和分支
- boost::endian::detail::is_scoped_enum用法的测试程序
- hadoop重命名文件_Hadoop -- 3. 从Flume到HDFS
- cloud 异步远程调用_异步远程工作的意外好处-以及如何拥抱它们
- 歪枣网股票数据下载接口汇总一
- 理想CEO李想在2020年的一些分享演讲
- sql2005关闭c2审核_C2审核–使用C2审核模式SQL Server审核和通用标准合规性
- 基础学习 Linux命令
- UVA10268 498-bis【多项式】
- yii 学习笔记五、通过gii创建modules(模块)
- [技术讨论][DDS] AD9833原理介绍及chiliDDS驱动分享(上)
- 单片机学习——定时器/计数器
- 专用计算机有,什么计算机是内嵌在其他设备中的专用计算机
- 安卓模拟位置之夜神模拟器
- python获取当前星期几
- 微信小程序制作——获取用户信息
- 手机淘宝——flexible.js 移动端自适应方案
- GitHub 小白入门
- 【ParaView教程】第一章 导言
热门文章
- 2022-2028年全球与中国青苔清洗剂市场研究及前瞻分析报告
- 2022-2028年中国高密度聚乙烯(HDPE)行业市场发展调研及投资前景分析报告
- LeetCode简单题之数字转换为十六进制数
- LeetCode简单题之找出井字棋的获胜者
- NVIDIA DPU架构
- 通过 DLPack 构建跨框架深度学习编译器
- 立体显示与BCN双稳态手性向列相
- CodeGen API分析
- 2021年大数据ELK(二):Elasticsearch简单介绍
- php-7.3.13 configure: error: Please reinstall the libzip distribution