以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- 主键列设置问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=162096)
|
-- 作者:ycs5801
-- 发布时间:2021/4/5 21:57:00
-- 主键列设置问题
你好老师,因为我的软件是由主服务器和客户端构成,两者各有自己的access数据库,客户端平时无法联网使用,在客户端可以联网时候,通过局域网像服务器的mdb文件写入新的数据,由于客户端可能会有多个,我怕多个客户端的_Identify列会有重复,那么汇总到一起时则会产生麻烦。所以我在access中将编号列设为软件主键列,这样就会产生一个麻烦,当我将某行删除后,再进行添加行,这一行的编号列会与之前删除的行的编号一致,造成系统出错,提示无法添加行。请问我的做法是否可行,如何处理错误。
|
-- 作者:有点蓝
-- 发布时间:2021/4/5 22:01:00
--
不要删除行,关闭删除功能,添加一个逻辑列,比如作废,不需要的行勾选作废。界面加载数据的时候,过滤掉已作废的行即可
|
-- 作者:ycs5801
-- 发布时间:2021/4/5 22:21:00
--
那所有的删除操作都不起作用了啊,access中的_Identify主键列,能否自己设置多加一个字符来区分各个客户端,或者在foxtable中额外添加一列“_Identify+区分字符”,然后把这列设置为主键列,这样不但可以利用_Identify的自动增量,也区分了数据?
|
-- 作者:有点蓝
-- 发布时间:2021/4/5 22:54:00
--
要使用自动增量就必须是主键,无法把其它列设置为主键。
可以多加一个字符来区分各个客户端。但是不能设置为主键
|
-- 作者:ycs5801
-- 发布时间:2021/4/5 23:06:00
--
看看这个,自动增量的不一定非要设置成主键啊
此主题相关图片如下:qq图片20210327092138.png

|
-- 作者:有点蓝
-- 发布时间:2021/4/6 0:06:00
--
我错了,是可以的。
|