找回密码
 立即注册

QQ登录

只需一步,快速开始

小土 悬赏达人认证

初级会员

12

主题

233

帖子

433

积分

初级会员

积分
433

悬赏达人

小土 悬赏达人认证
初级会员   /  发表于:2021-8-25 08:51  /   查看:2375  /  回复:8
1金币
本帖最后由 小土 于 2021-8-25 09:19 编辑

活字外联数据库,已经勾选四个日志功能:

一段时间,查看日志时发现,日志中SQL语句如下(*号为人名):

UPDATE [GSP_SYQY] SET ([zhilyj]=***, [zhilfzr]=***, [zhilrq]=2021-08-19, [zlshenhe]=是, [shenhyj]=***, [shenhrq]=2021-08-19, [shenhr]=***, [shenhe]=*) IN ROW([zhilyj]=                                        , [zhilfzr]=            , [zhilrq]=          , [zlshenhe]=*, [shenhyj]=, [shenhrq]=, [shenhr]=            , [shenhe]=*)

问题:我只能知道,我改成了什么,  或者哪些人改了数据。
但是我不知道我具体改的时特定的哪一行。要追溯这一条是谁改的的时候,只能根据时间,追溯一个大致,但是无法精确的找到那一条。



尝试过 https://gcdn.grapecity.com.cn/showtopic-90806-1-1.html 这里的方法,但是感觉没用啊- -
研究后发现: select 语句的 where 倒是很齐全,
最关键的update 没有详细的 where 信息 只有 in row()
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

状态更新:大佬,这个需求已经存在啦,我们也帮您的反馈记录上去了~

8 个回复

倒序浏览
最佳答案
最佳答案
David.Zhong讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2021-8-25 08:51:39
来自 9#
本帖最后由 David.Zhong 于 2021-8-26 12:30 编辑
小土 发表于 2021-8-25 10:26
例如这一行,我知道是谁什么时候改了这一行但是我并不能知道,这一行是哪一行
demo已经上传,烦请测试 ...

状态更新:大佬,这个需求已经存在啦,我们也帮您的反馈记录上去了~
回复 使用道具 举报
孤狼悬赏达人认证 活字格认证
高级会员   /  发表于:2021-8-25 08:59:48
2#
官方的日志功能应该是有被修改数据的表名和用户名的,可以追溯到操作人的呀,这是文档,你参考一下:
https://help.grapecity.com.cn/pa ... ion?pageId=56525207

sql语句里也比较详细了,基本可以定位到具体哪条数据被修改前、被修改后是什么样子。

如果还需要更加细致的log,那建议使用外联库mysql、mssql的触发器,自己写些需要的逻辑,比如insert的前后怎么去记录、update又怎么操作、delete是否允许等等。

如果感觉有帮助,记得选我为最佳回答哟,谢谢

评分

参与人数 1金币 +5 收起 理由
David.Zhong + 5 很给力!

查看全部评分

回复 使用道具 举报
小土悬赏达人认证
初级会员   /  发表于:2021-8-25 09:06:11
3#
孤狼 发表于 2021-8-25 08:59
官方的日志功能应该是有被修改数据的表名和用户名的,可以追溯到操作人的呀,这是文档,你参考一下:
http ...

谢谢解答,我一开始写的系统,是自己写日志的,后面由于这个算是个临时使用大半年   的工程,就没做那么惊精细。表名,用户名,确实有 ,但是找不到  某特定的数据,是谁改的。
目前正在尝试:https://gcdn.grapecity.com.cn/showtopic-90806-1-1.html
这里的修改 XML 文件中某项为3的方法。

评分

参与人数 1金币 +5 收起 理由
David.Zhong + 5 很给力!

查看全部评分

回复 使用道具 举报
孤狼悬赏达人认证 活字格认证
高级会员   /  发表于:2021-8-25 09:10:00
4#
恭喜开启隐藏功能
回复 使用道具 举报
David.Zhong讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2021-8-25 09:46:51
5#
感谢大佬的支持~
如果您的问题已解决,请及时设置最佳答案给有帮助到你的回复哟~
回复 使用道具 举报
小土悬赏达人认证
初级会员   /  发表于:2021-8-25 10:00:43
6#
David.Zhong 发表于 2021-8-25 09:46
感谢大佬的支持~
如果您的问题已解决,请及时设置最佳答案给有帮助到你的回复哟~

版主大大,没解决呢。
感觉上XML文件选 1 和选 3 没什么区别
sql中如果update 是这样子的: update  tablename set key =value where condition
现在 在日志文件里 update是这样子的: update tablename  set key =value  in Row(key=oldValue)
就是这个 condition 找不到
回复 使用道具 举报
David.Zhong讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2021-8-25 10:03:59
7#
小土 发表于 2021-8-25 10:00
版主大大,没解决呢。
感觉上XML文件选 1 和选 3 没什么区别
sql中如果update 是这样子的: update  tab ...

能提供一个demo让我们测试一下吗?记得说一下操作步骤哟~
如果涉及到外联表,可以转成内置然后上传。
【外联转内置】
外联转内建库的具体步骤:
1.复制一份工程文件(复制一份主要是为了避免你将你的原版工程的数据库转成内置后,还要再转回去,比较麻烦);
2.打开某一个工程文件,按下ctrl+shift 同时点击“转换内建表按钮”(这个按钮在菜单栏“数据”项下)
3.按下ctrl+s保存
4.将转换后的这个工程上传即可~
回复 使用道具 举报
小土悬赏达人认证
初级会员   /  发表于:2021-8-25 10:26:08
8#
David.Zhong 发表于 2021-8-25 10:03
能提供一个demo让我们测试一下吗?记得说一下操作步骤哟~
如果涉及到外联表,可以转成内置然后上传 ...


例如这一行,我知道是谁什么时候改了这一行但是我并不能知道,这一行是哪一行
demo已经上传,烦请测试

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部