Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:如何适应基础数据变更带来的影响呢?

1楼
成都老王 发表于:2011/7/19 17:34:00

数据库应用中,如果遇到基础数据变更,是的依赖于该数据的其它历史记录统计不正确,如何处理这种情况呢?

 

1.比如说:数据库中有2个表《人员信息表》《入库表》。

《人员表》中,ID=1,Name=张三。

《入库表》中,存在3月份办理的某张入库单,其经办人ID=1(打印的经办人姓名=张三)。

4月份时,修改ID=1的name=张山。

结果3月份的入库单经办人也变成“张山”而非“张三”。

-----不允许出现此情况。

 

[此贴子已经被作者于2011-7-19 18:07:38编辑过]
2楼
狐狸爸爸 发表于:2011/7/19 17:37:00
没看懂你的问题
3楼
成都老王 发表于:2011/7/19 18:10:00

2.《价格表》中,某种物料价格4元,产生了若干张销售记录。

调价后,价格为5元。

汇总销售记录时,4元的历史记录都变成的5元,就不正确了。

4楼
狐狸爸爸 发表于:2011/7/19 18:17:00

这种情况不应该用表达式列,应该用数据列和代码。

处理方法,参考:

http://www.foxtable.net/help/topics/1451.htm

5楼
blackzhu 发表于:2011/7/20 8:13:00
以下是引用成都老王在2011-7-19 18:10:00的发言:

2.《价格表》中,某种物料价格4元,产生了若干张销售记录。

调价后,价格为5元。

汇总销售记录时,4元的历史记录都变成的5元,就不正确了。



  如果用代码不去刷新就没有问题了,如果用表达式是即时更新的.所以我的赞成做法要么第一个,要么价格表里面的数据只要是新价格就新加入一个数据,调用这个新数据就万事大吉了.

6楼
kgd815 发表于:2011/7/20 9:32:00
修改ID=1的name=张山

对于改变名称不改变编号的基础数据记录,在其它表使用中,就不能用动态引用的方法,要同时建立 ID   name 两个字段,看样子好像数据冗余,只有在新建的时候将基础数据的两个字段同时导入,这样就不会出现上面的问题,

价格也是一样,产品表上的价格只是作为新建时的数据引用,销售表上要同时有价格列,不能用公式列,
7楼
xl 发表于:2011/7/20 9:39:00
是楼主把问题整得复杂化了,有月份,增加“自定编号”,就不会出现1楼情况。
共7 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 2 queries.