起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1589|回复: 3

[结贴] 如何判断一条新增的数据,是否已经存在

[复制链接]

73

主题

247

帖子

313

积分

中级会员

Rank: 3Rank: 3

积分
313
QQ
发表于 2014-10-23 15:20:45 | 显示全部楼层 |阅读模式
版本: X5.2.7 小版本号:
数据库: MS SQLServer 服务器操作系统: 应用服务器:
客户端操作系统: Windows 7 浏览器:
如何判断一条新增的数据,是否已经存在,我新增数据,点保存,如果该数据已经存在,请提示“已存在”;
请问  应该如何实现呢?

94

主题

1141

帖子

2380

积分

金牌会员

Rank: 6Rank: 6

积分
2380
发表于 2014-10-23 15:24:09 | 显示全部楼层
当然是对比主键,或者对比其它一些字段值不能一样。不知道可不可以拿当前的这条数据跟概念查到的数据对比,不行的话可以自定义action去对比
回复 支持 反对

使用道具 举报

109

主题

1191

帖子

3851

积分

论坛元老

Rank: 8Rank: 8

积分
3851
QQ
发表于 2014-10-23 15:30:28 | 显示全部楼层
可以先根据这个方法
getChangedIDList(justep.XData.STATE type)
获取修改的行id数组,需要保存前获取
justep.XData.STATE data的状态常量

  包括:justep.XData.STATE.NEW、justep.XData.STATE.DELETE、justep.XData.STATE.EDIT、justep.XData.STATE.NONE获取到justep.xbl('bizData1').getChangedIDList(justep.XData.STATE.NEW);这个新增数据的fID,根据fID取到对应字段的值,然后在去数据库里查询一下(count),然后根据count的值判断是否重复,重复的话就取消保存动作
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2014-10-23 16:05:56 | 显示全部楼层
不允许添加重复数据参考
1.数据库中设置唯一
2.把data的data-type改为json
3.用的mysql数据库onSavaError如下实现
mainActivityDetail.detailDataSaveError = function(event) {

        var errornode = event.errorNode.stack;
        if (errornode.indexOf("Duplicate entry")) {
                throw new Error("身份证号必须唯一");
        } else
                throw new Error("请看控制台的详细错误信息");
};
不同的数据库event.errorNode.stack的具体信息可能不一样,需要自己修改errornode.indexOf("Duplicate entry")中Duplicate entry
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-19 01:53 , Processed in 0.096773 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表