Foxtable(狐表)用户栏目专家坐堂 → 关于增加操作日志


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

主题:关于增加操作日志

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


加好友 发短信
等级:一尾狐 帖子:423 积分:3196 威望:0 精华:0 注册:2013/5/10 10:01:00
关于增加操作日志  发帖心情 Post By:2017/6/28 23:34:00 [只看该作者]

我想把 对于某些表的 操作, 一般就是  增删改  的操作, 完成并保存后,加上日志

比如 某某某 什么时间,地点,对那个表 那个列做了 什么操作,应该加在什么 全局表事件比较好呢?

我不想一个一个表增加,这样太繁琐,想加到全局表事件中

不想加在 beforesaveDatarow  上面,因为此时  数据尚未入库,是否真正发生变化,还未可知

也不想加在  Table 上面, 因为 Table 上面的增删改,也还没有真正保存到后台的数据库中

请问,加在那个 事件中最合适呢?


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


加好友 发短信
等级:超级版主 帖子:107718 积分:547917 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/6/29 8:36:00 [只看该作者]

新增行:beforesaveDatarow
修改数据:datacolchanged
删除数据:DataRowDeleting
[此贴子已经被作者于2017/6/29 8:36:34编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/29 8:39:00 [只看该作者]

参考

 

下载信息  [文件大小:340.0 KB  下载次数:25]
图片点击可在新窗口打开查看点击浏览该文件:操作日志.table

 


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


加好友 发短信
等级:一尾狐 帖子:423 积分:3196 威望:0 精华:0 注册:2013/5/10 10:01:00
  发帖心情 Post By:2017/6/29 16:25:00 [只看该作者]

新增行:beforesaveDatarow   这个好像修改的数据也会被调用吧,而且有几个列,就会调用几次,是不是呢?
修改数据:datacolchanged    这个好像也是有几个列,就会调用几次吧
删除数据:DataRowDeleting  这个倒是可以使用

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/29 16:31:00 [只看该作者]

如果你用的是sqlserver数据库,触发器满足你的需求,那个时候的值,是准备保存的值了。

 

如果要在foxtable处理:

 

beforesaveDatarow   (每行保存之前触发)

datacolchanged        (修改数据后马上出发)


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


加好友 发短信
等级:一尾狐 帖子:423 积分:3196 威望:0 精华:0 注册:2013/5/10 10:01:00
  发帖心情 Post By:2017/6/29 16:42:00 [只看该作者]

我是想在 实际的 增删改 操作真正完成之后,也就是入库之后,再记录日志,否则 可能会出现 记录的日志和实际操作不一致的情况

另外  beforesaveDatarow ,据我测试, 每个表, 有几个列就会调用几次,非常耗费效率

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/29 16:45:00 [只看该作者]

beforeSaveDataRow,有几行修改,就调用几次。

 

如果想【实际修改后记录】,请用数据库的触发器 https://www.baidu.com/s?ie=UTF-8&wd=sqlserver%20%E8%A7%A6%E5%8F%91%E5%99%A8

 


 回到顶部