Foxtable(狐表)用户栏目专家坐堂 → 数据参照完整性如何实现?


  共有6070人关注过本帖树形打印复制链接

主题:数据参照完整性如何实现?

帅哥哟,离线,有人找我吗?
zpx_2012
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
数据参照完整性如何实现?  发帖心情 Post By:2013/11/28 10:37:00 [只看该作者]

系统中有一个{产品编码}表,订单明细,出入库明细,采购明细等都是从中提取产品编码的相关数据自动填充,现在想实现当修改产品编码中的产品编码时所有引用表中的产品编码自动更新,如果删除产品编码时该编码被任何一张单据引用便禁止删除并提示。
本想在sql数据库关系图中设置一对多的关系,但因为全部主键都是用的[_Identify]用它连接无意义。不知道这种情况下(主键是_Identify)怎么才能用产品编码建立多个表之间的一对多关系?

图片点击可在新窗口打开查看此主题相关图片如下:20131128-1.jpg
图片点击可在新窗口打开查看

如果不用sql关系图,在ft中如何实现这种功能(不会是要在删除或更新产品编码时遍历后台所有表去逐个查找吧?这样速度肯定是个大问题)

谢谢!


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178530 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 10:41:00 [只看该作者]

用产品编码设为关联列不就OK了.  有什么问题? 又不是非要主键才可以关联.

删除也不存在循环啊

 回到顶部
帅哥哟,离线,有人找我吗?
zpx_2012
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
  发帖心情 Post By:2013/11/28 10:53:00 [只看该作者]

谢谢,我还以为是必须要主键才能设置一对多关系,但却出现下面的提示,也没有在数据库设置过约束啊


图片点击可在新窗口打开查看此主题相关图片如下:20131128-2.jpg
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178530 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 10:54:00 [只看该作者]

图片点击可在新窗口打开查看我说的是狐表关联

 回到顶部
帅哥哟,离线,有人找我吗?
zpx_2012
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
  发帖心情 Post By:2013/11/28 11:01:00 [只看该作者]

那样不行啊,因为全部表操作时都是动态加载的窗口表,本身没有关联,第二即使是建立了关联,操作产品编码表时可能其他表都没有加载进来。

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178530 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 11:05:00 [只看该作者]

1.不要使用系统自身的 _Identify 列作为主键, 这个是可以自由设置主键的

2.不要关联其实也可以,完全可以通过代码SQL语句实现关联的作用,同步删除,更改等...

 回到顶部
帅哥哟,离线,有人找我吗?
zpx_2012
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
  发帖心情 Post By:2013/11/28 11:43:00 [只看该作者]

我就是通过sql语句来实现关联的,对于主子表这样的更改,删除当然速度没问题,现在主要是对于很多引用表的更新删除比如我说的产品编码表可能和所有表都相关,那删除一个编码是用sql语句去查询所有相关表速度不是慢死了。所以才想用sql数据库关系图来实现,那毕竟是数据库具备的功能,速度应该不会有影响吧;
如果我改用其他非-Identify的字段做为主键,请问原来的_Identify怎样才能保持现有的自动增长不重复的功能,因为这个很方便实用。

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178530 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 11:47:00 [只看该作者]

只能有一个自增主键,设了其他 就没有 Identify了

 回到顶部