Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

如何保证表中不允许有重复数据

swmsong  发表于:2010-12-04 11:17:58  
复制

通过窗体来输入数据到表中(10个字段),要求表中所有的数据都是唯一的不允许重复。如果输入了一个重复数据,立刻会提示。

请问该如何做到。

小弟是新手,不胜感激

 

Top
麥田 发表于:2010-12-04 11:21:52

    If DCount("控件名称", "表名称", "控件名称='" & Me.控件名称 & "'") > 0 Then
        MsgBox "你输入的数据已经存在,请重新输入", vbCritical, "警告"
        Me.控件名称.SetFocus
        Exit Sub
    End If



fyupeng 发表于:2010-12-04 18:37:21
表的字段设计中“索引”选择“有(无重复)”也是可以的

赵玥琦 发表于:2010-12-05 20:56:35

在表字段设计中索引中选择有无重复,还可以提高表中记录粘贴的速度。如果将每个字段中都加入代码进行判断,粘贴速度会受到影响。



swmsong 发表于:2010-12-06 09:06:23

表字段加索引好象只能防止这一个字段的数据不重复,字段间的数据还是会重复。

最好是通过窗体输入一个数据后即和表中的数据去比较是否有重复,速度应该会有影响,但是我没试过。

麦田的代码具体该怎么应用啊。加在那里?



Lee 发表于:2010-12-07 10:50:22

我也很想知道,因我最近也遇到类似问题。

我想麦田和fyupeng误解了swmsong的意思了,swmsong是想多个字段比较无重复,而不是某一个字段内容不重复。

以我自己问题为例,成本表中有“产品编号”、“单价”、“更新日期”,我要求表中记录不能出现“产品编号”和“更新日期”都相同的,否则查询会出错。

我想swmsong是这意思吧?

密切留意此贴。



swmsong 发表于:2010-12-08 17:04:29

lEE:

   你的要求就复杂多了,需要把两个字段当一个字段处理。

 

   我的要求就是输入一个数据,就和表中所有的数据进行比较。要求无重复。用DCOUNT应该是可行的。但是按

   麦田的代码不行。

 

  



周裕涛 发表于:2010-12-09 15:14:14
我的示例在“平台”中用还可以,不管是一个字段的重复,还是判断几个字段的重复都可以,但不借助“平台”就不能检测重复不知何故?点击下载此附件用户名:000001,密码:admin

行知 发表于:2010-12-12 11:54:52

我能想到的办法就是,每个字段都查询比较,把比较结果做累计,比如字段有重复就加一,如果要是10个字段,最后判断累加值是10的话,就是重复记录。不过这么做是不是太慢了。



FENG 发表于:2010-12-23 23:34:06

请见附件中的进货日期窗体,我以前也遇到了这样的难道,也是在这里羽扇子君帮我解决了.这个方法你可以参考一下.

点击下载此附件

总记录:9篇  页次:1/1 9 1 :