以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何设置主键 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=43011) |
-- 作者:lfxxdt -- 发布时间:2013/11/28 8:53:00 -- 如何设置主键 从哪里对表中某列设置主键
|
-- 作者:Bin -- 发布时间:2013/11/28 8:55:00 -- 默认主键是 _Identify 想要自己设置的话要到 数据库里设置 内部数据源可以考虑使用SQL语句设置
|
-- 作者:lfxxdt -- 发布时间:2013/11/28 9:08:00 -- 默认主键是 _Identify ,这个是不是自增型的 |
-- 作者:Bin -- 发布时间:2013/11/28 9:15:00 -- 是的,帮助也有说到! http://www.foxtable.com/help/topics/1807.htm |
-- 作者:lfxxdt -- 发布时间:2013/11/28 9:24:00 -- 那还有什么原因呢,现在做的{日报表},不同工序只加载本工序的数据录入,然后再保存,就存在个别数据跑到其它工序,或将其它工序的数据替换,这个问题一直找不到原因。 |
-- 作者:Bin -- 发布时间:2013/11/28 9:25:00 -- 没有例子测试分析,纸上谈兵对于这种问题是得不到答案的. |
-- 作者:lfxxdt -- 发布时间:2013/11/28 9:34:00 -- 我这个做的是网络环境下的,无法上例子,是否可上QQ,在QQ上通过远程来查看分析 |
-- 作者:Bin -- 发布时间:2013/11/28 9:35:00 -- 你做个一样的ACCESS外部数据源例子吧,远程查看分析,估计得搞好几天都折腾不出结果. 又卡又不方便,不太科学. |
-- 作者:狐狸爸爸 -- 发布时间:2013/11/28 9:47:00 -- 我再提醒一个细节,新增行的时候,_Identify列的值是临时的,例如原来有10行(0-9),A和B两个用户同时增加1行,那么两个人新增的行的_Identify的值都是10,保存之后,一个还是为10,另一个为11,这个值才是真正的Identify值。
所以编码使用sql语句更新,而且sql语句使用了_Identify列的值作为更新依据的话,那么对于新增行,必须先保存此行,才能调用其_Identify列的值,否则必定存在一定的出错概率。
比较稳妥的是新增行后立即保存,或者另外用一个字符列(长度12左右),后台将此列设置为唯一,新增行时生成随机字符写入此列,编码的时候将此列作为行的身份识别。 [此贴子已经被作者于2013-11-28 9:58:36编辑过]
|
-- 作者:lfxxdt -- 发布时间:2013/11/28 14:21:00 -- 这是我编写的 |