当前位置:编程学习 > C#/ASP.NET >>

数据上传,比对重复

    一个数据上传的程序,分为两部分,一个是小程序,通过远程连接数据库上传,一个是通过页面输入直接上传。现在想解决一个问题,对最新上传的数据中某个字段(比如xlh:序列号),与数据库中原有的字段数据比对,如果新的xlh在原数据库中有的话,则标记(有标记字段:cf,重复),并在显示页面高亮显示。主键为序号(bh)。
    个人认为:
    1、如果实时显示,是不是需要在页面输入和程序代码上都要做修改?
    2、或者还有一种方法,在数据库中直接编写语句,让该语句一直执行?
    还是在网页的那个代码中添加?
    求教,这个比较的代码如何写?选择最大的bh行的xlh字段,是否in比这个bh小的行中xlh字段相同,如果相等,cf标记为1. 数据库 重复 --------------------编程问答-------------------- 你对问题描述的相当的混乱,请重新整理后再表述一次。。。。。。 --------------------编程问答-------------------- 简单的说,
1.你的数据应该有一个主键表示其唯一性,不然没法判断是否重复,可能就是你说的----xlh:序列号
2.第一条前提下,插入的时候判断下是否存在,或直接插入,报主键重复,都能说明是否重复
3.关于实时显示,这个跟数据库没关系,爱怎么弄就怎么弄好了 --------------------编程问答--------------------
引用 2 楼 foren_whb 的回复:
简单的说,
1.你的数据应该有一个主键表示其唯一性,不然没法判断是否重复,可能就是你说的----xlh:序列号
2.第一条前提下,插入的时候判断下是否存在,或直接插入,报主键重复,都能说明是否重复
3.关于实时显示,这个跟数据库没关系,爱怎么弄就怎么弄好了


先谢谢回答。
当然,主键是bh,我设置的是自增。不会重复。还有,你回答的第3点,我没弄懂什么意思? --------------------编程问答-------------------- select * from table 
where xlh in(上传)
结果就是重复的

--------------------编程问答-------------------- --------------------编程问答--------------------
引用 楼主 smypolice 的回复:
    个人认为:
    1、如果实时显示,是不是需要在页面输入和程序代码上都要做修改?

页面输入必然需要执行程序代码才能写入数据库。你这里说的是同一个东西。这个东西里判断一下就行了,不用看后边的“二、三”了。

在写入数据之前,你当然需要先执行类似
if exists(select * from yourTable where xlh='xxxx') select 1 else select 0 

这样的语句,根据返回的值为1还是0来给你的cf属性设置值,之后才把这个数据写入数据库。
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,