帖子
帖子
用户
博客
课程
显示全部楼层

[FAQ] 删除多条记录,不通过ID号,通过其他的条件判断后删除?

[复制链接]
发表于 2016-8-27 18:34:03
在file类中,新增了Expressid,等其他字段,在Expressid中存放了多条重复记录,现需要删除Expressid值为 “57c15a12fed9be65516143e4”的记录,
我的方法:
function fnDeleteTest(){
        var client = new Resource(appId, appKey);
        var File= client.Factory("file");
        File.delete({
            "Expressid": "57c15a12fed9be65516143e4"
      },function(ret,err){
        alert(JSON.stringify(ret) + ',' + JSON.stringify(err));
    });
    };

这样执行后报错,请教怎么通过其中的字段删除数据??
报错图:
QQ图片20160827183249.jpg
file:///C:\Users\Administrator\Documents\Tencent Files\694726687\Image\C2C\98E8C879B16A75E93B93405958348436.jpg

4
帖子
0
勋章
2750
Y币
看看批量操作那里,看支持不支持
已经找到方法,自己封装了一个批量删除的方法。不过,数据消耗可能有点大,将就用了。
//批量删除数据 ClassName 表名,DeleteWhere 删除条件为JSON格式,Callback回调函数
function fnBatDelete(ClassName,DeleteWhere,Callback){
    var client = new Resource(appId, appKey);
    var classname= client.Factory(ClassName);
    classname.query({
      "filter": {
        "where": DeleteWhere,
        "skip": 0,
        "limit": 1000000
    }
},function(ret,err){
        //alert(JSON.stringify(ret) + JSON.stringify(err));
        if(ret && ret.length>0){
            for(var i=0;i<ret.length;i++){
                classname.delete({
                    "_id": ret[i].id
                },Callback);
            }
        }
    });
};
您需要登录后才可以回帖 登录

本版积分规则