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的使用相关推荐

  1. Node.js 连接 MySQL 并进行数据库操作 –node.js 开发指南

    Node.js是一套用来编写高性能网络服务器的JavaScript工具包 通常在NodeJS开发中我们经常涉及到操作数据库,尤其是 MySQL ,作为应用最为广泛的开源数据库则成为我们的首选,本篇就来 ...

  2. android中的数据库操作(SQLite)

    android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库   an ...

  3. php封装的数据库操作文件夹,PHP中对数据库操作的封装_php

    现在我们把其封装在dbfz.inc中,其设计如下: $#@60;? class dbInterface{ var $dbID=1; //用于确定当前操作的数据库,当dbID为1代表mysql,当为 2 ...

  4. php定义数据表类,phpwind中的数据库操作类

    phpwind中的数据库操作类 2021-01-22 20:12:15141 /*来源:phpwind.net*/ ClassDB{ var$query_num=0; functionDB($dbho ...

  5. phpwind database.php,phpwind中的数据库操作类

    phpwind中的数据库操作类 更新时间:2007年01月02日 00:00:00   作者: /*来源:phpwind.net*/ Class DB { var $query_num = 0; fu ...

  6. wp-db.php,WordPress中的数据库操作类wp-db.php

    版权:转载 来源:互联网 WordPress中的数据库操作类wp-db.php的原型是ezSQL.官方网站: http://php.justinvincent.com ezSQL支持对如下数据库的操作 ...

  7. android中的数据库操作

    android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库 andr ...

  8. 一文详解python中的数据库操作

    python中的数据库操作 一.数据库编程接口 1. 连接对象 二.使用内置的SQLite 1.创建数据库文件 2.操作SQLite 三.MySql数据库的使用 3.1 安装MySql 3.2 设置环 ...

  9. PHP中对数据库操作的封装

    在动态网面设计中很多都要涉及到对数据库的操作,但是有时跟据需要而改用其它后台数据库,就需要大量修改程序.这是一件枯燥.费时而且容易出错的功作.其实我们可以用PHP中的类来实现对数据库操作的封装,从而使 ...

最新文章

  1. python音乐的数据抓取与分析_Python练习之抓取QQ音乐数据
  2. git远程仓库和分支
  3. boost::endian::detail::is_scoped_enum用法的测试程序
  4. hadoop重命名文件_Hadoop -- 3. 从Flume到HDFS
  5. cloud 异步远程调用_异步远程工作的意外好处-以及如何拥抱它们
  6. 歪枣网股票数据下载接口汇总一
  7. 理想CEO李想在2020年的一些分享演讲
  8. sql2005关闭c2审核_C2审核–使用C2审核模式SQL Server审核和通用标准合规性
  9. 基础学习 Linux命令
  10. UVA10268 498-bis【多项式】
  11. yii 学习笔记五、通过gii创建modules(模块)
  12. [技术讨论][DDS] AD9833原理介绍及chiliDDS驱动分享(上)
  13. 单片机学习——定时器/计数器
  14. 专用计算机有,什么计算机是内嵌在其他设备中的专用计算机
  15. 安卓模拟位置之夜神模拟器
  16. python获取当前星期几
  17. 微信小程序制作——获取用户信息
  18. 手机淘宝——flexible.js 移动端自适应方案
  19. GitHub 小白入门
  20. 【ParaView教程】第一章 导言

热门文章

  1. 2022-2028年全球与中国青苔清洗剂市场研究及前瞻分析报告
  2. 2022-2028年中国高密度聚乙烯(HDPE)行业市场发展调研及投资前景分析报告
  3. LeetCode简单题之数字转换为十六进制数
  4. LeetCode简单题之找出井字棋的获胜者
  5. NVIDIA DPU架构
  6. 通过 DLPack 构建跨框架深度学习编译器
  7. 立体显示与BCN双稳态手性向列相
  8. CodeGen API分析
  9. 2021年大数据ELK(二):Elasticsearch简单介绍
  10. php-7.3.13 configure: error: Please reinstall the libzip distribution