以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求一个网络条件下禁止重复的思路(动态加载)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=28954)

--  作者:even0898
--  发布时间:2013/2/23 18:49:00
--  求一个网络条件下禁止重复的思路(动态加载)

今天碰到个郁闷的问题,2个同事因为交接不清楚,同时添加了一模一样的的数据,而且同时保存了..

结果导致程序崩溃,查了半天才查出来

在FOX里设置的是动态加载15行数据,用以下语句判断

Dim cmd As New SQLCommand
cmd.CommandText = "Select count(字段) From {表名} Where 字段 = \'指定值\'"
If cmd.ExecuteScalar() > 0 Then
    MessageBox.Show("重复")
End If

FOXTABLE里所有针对重复的设置都是对已加载到FOX里的数据来进行重复判断的

以上,有达人提供个解决思路不?


--  作者:双轨制
--  发布时间:2013/2/23 20:22:00
--  

将不能重复的列设置为主键啊。

也可以看看:

http://www.foxtable.com/help/topics/1994.htm

 


--  作者:程兴刚
--  发布时间:2013/2/23 20:30:00
--  
将不能重复的列设置为主键列,网络应用,添加完一行,并给这一列赋值后,马上执行DataRow的Load方法
--  作者:even0898
--  发布时间:2013/2/23 20:43:00
--  

在SQL数据库里把不可重复的数据列设置为主键?是这个意思吗?


--  作者:lin_hailun
--  发布时间:2013/2/25 13:16:00
--  
以下是引用even0898在2013-2-23 20:43:00的发言:

在SQL数据库里把不可重复的数据列设置为主键?是这个意思吗?


设置主键应该不行的,因为已经有一个主键了,双主键达不到控制重复的效果。楼主你设置一下约束吧,唯一约束。