假定你交给我一篇文章,我过后还给你,考虑如下三种情形:
1.我不告诉你有没有改动过文章,你如何判断?
2.我明确告诉你改过,但不告诉你改了何处、哪些,你如何把它们找出来?
3.我明确告诉你改了何处、哪些,你自己找出差异。
我不知道你是在类似以上那样的什么情形下要判断表被修改过,也不敢猜想上面所说的那些函数能在多大程度上有助于你解决问题。
对自由表,如果你很明确预料某条记录可能会被修改,那么可在适当时候把这条记录在内存中复制一份副本(如果明确知道哪个字段则更省事),过后对比判断即可。如果不是这种情形,无异于要对两份数据表逐字节对比,这样即使知道有被修改过,上面那些函数也是无济于事的。
其实,看看帮助信息就知道了,OLDVAR()和CURVAR()函数,要求设置缓冲模式(记录缓冲或表缓冲),究其实就是使用副本备份原始数据,以便于作新旧对比。明白这个道理,对自由表或任何数据,都知道怎么应付了。不过,在不知道何处及无法预测多少数据被修改过的情况下,全盘对比是很麻烦的,特别是数据表这样可能极其庞大的情形,要提高效率,只能在制度上入手,做“变动登记表”,谁修改谁填写,不至于让别人大海捞针。
[ 本帖最后由 TonyDeng 于 2012-1-5 02:48 编辑 ]
1.我不告诉你有没有改动过文章,你如何判断?
2.我明确告诉你改过,但不告诉你改了何处、哪些,你如何把它们找出来?
3.我明确告诉你改了何处、哪些,你自己找出差异。
我不知道你是在类似以上那样的什么情形下要判断表被修改过,也不敢猜想上面所说的那些函数能在多大程度上有助于你解决问题。
对自由表,如果你很明确预料某条记录可能会被修改,那么可在适当时候把这条记录在内存中复制一份副本(如果明确知道哪个字段则更省事),过后对比判断即可。如果不是这种情形,无异于要对两份数据表逐字节对比,这样即使知道有被修改过,上面那些函数也是无济于事的。
其实,看看帮助信息就知道了,OLDVAR()和CURVAR()函数,要求设置缓冲模式(记录缓冲或表缓冲),究其实就是使用副本备份原始数据,以便于作新旧对比。明白这个道理,对自由表或任何数据,都知道怎么应付了。不过,在不知道何处及无法预测多少数据被修改过的情况下,全盘对比是很麻烦的,特别是数据表这样可能极其庞大的情形,要提高效率,只能在制度上入手,做“变动登记表”,谁修改谁填写,不至于让别人大海捞针。
[ 本帖最后由 TonyDeng 于 2012-1-5 02:48 编辑 ]
授人以渔,不授人以鱼。