以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  列“Order_No, Order_Xh”被约束为是唯一的。  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=39241)

--  作者:longtechwj
--  发布时间:2013/8/19 11:59:00
--  列“Order_No, Order_Xh”被约束为是唯一的。
我设了两个主键Order_No, Order_Xh,新增行的时候
出现这个错误,
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130819115357.jpg
图片点击可在新窗口打开查看

--  作者:Bin
--  发布时间:2013/8/19 12:01:00
--  
有唯一约束的列,是不允许有相同的值得.
--  作者:longtechwj
--  发布时间:2013/8/19 12:08:00
--  
但是有什么办法解决呢
--  作者:Bin
--  发布时间:2013/8/19 12:09:00
--  
如果没有唯一约束的需求,你为何要这么设置呢.  如果有这个需求,你为何还要输入重复值呢. 自相矛盾的啊.

根据你自己需求 做就行了.

--  作者:longtechwj
--  发布时间:2013/8/19 12:15:00
--  
其实我有考虑到重复的问题,我新增之后会给Order_Xh这一列赋值,不过这一行
并不在数据表中存在,所以不管我怎么MAX+1都会重复的

--  作者:longtechwj
--  发布时间:2013/8/19 12:22:00
--  
我用两个主键其实是想提高查询的速度的
--  作者:jspta
--  发布时间:2013/8/19 13:39:00
--  
以下是引用longtechwj在2013-8-19 12:15:00的发言:
其实我有考虑到重复的问题,我新增之后会给Order_Xh这一列赋值,不过这一行
并不在数据表中存在,所以不管我怎么MAX+1都会重复的

Max+1在多人模式下,肯定会重复的


--  作者:longtechwj
--  发布时间:2013/8/19 15:13:00
--  
不会的,我保存的时候还会重新取一次最新的
--  作者:fox123
--  发布时间:2013/8/19 15:17:00
--  
外部表的话,没必要搞成这样,一般来说订单号都是唯一的,你非得这样做,不如加个自增ID为主键,这两列为索引列
--  作者:longtechwj
--  发布时间:2013/8/19 15:25:00
--  
这个表是订单的明细表,与主表形成一对多的关系,所以不能单单只设订单编号为
主键