gpt4 book ai didi

database - 跟踪数据库中修改后的元组的最佳方法是什么?

转载 作者:搜寻专家 更新时间:2023-10-30 20:32:40 24 4
gpt4 key购买 nike

我目前正在从事一个项目,在该项目中我必须跟踪在关系数据库中修改的元组。这应该包括更新的元组,但也包括插入和删除的元组。我的问题是实现这一目标的最佳方式是什么?我有几个自己的想法,但也许有我没有想到的更简单/更好的方法,或者已经存在一个项目可以做到这一点。

该项目的最终目标是适用于不同供应商的关系数据库,但第一个实现将使用 MySQL 数据库。以后可以支持其他数据库系统。但是,如果适用于 MySQL 的解决方案可以轻松地适应其他数据库,那就太好了。

我的第一个想法是解析日志文件。但是,我不确定这些日志文件是否包含实际修改的元组,而且我可以想象这些日志文件不会总是可用(例如在共享主机上)。

我的第二个想法是在应用程序级别拦截查询。当执行 INSERT、DELETE 或 UPDATE 查询时,可以解析这些查询,并且可以预先确定它们将影响的元组。对于 INSERT 操作,这只是插入的元组,对于 DELETE 或 UPDATE 操作,可以通过在新的 SELECT 语句中应用 WHERE 子句来识别元组。

作为最后的评论,我想补充一点,在这个开发阶段,性能并不是一个重要的因素。

如果需要更多详细信息,我很乐意提供。

最佳答案

使用触发器捕获 INSERT、UPDATE 和 DELETE,并将您的条目记录到新表中。您可以在该表上使用时间戳来记录交易发生的时间。将来您可以查询该表以获取您的修改信息。

关于database - 跟踪数据库中修改后的元组的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2057646/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com