我是SAP安装上的BI经理。我有一个SAP应用程序将数据写入的SAP DB。为了在不加载sap的情况下获取查询环境,我在服务器上镜像了SAP DB,并且工作正常。
每晚我都会完整填充数据,现在一切正常。我知道在某个地方,我将不得不开始进行增量更新。
如果我知道表中哪些行已被修改或添加,以及何时更容易,这将更容易。是否可以在更新或创建表时写入表的目标服务器上触发?很多时候,没有迹象表明在源表中创建行的日期。我不熟悉镜像和复制的规则
答案 0 :(得分:2)
解决此问题的最简单方法可能是更新您的表格以添加timestamp
列,并将其默认设置为当前版本的项目。您可以查看here以获取更多信息,但格式基本上如下......
ALTER TABLE <tablename> ADD timestamp
如该链接所述,您无需指定列名,因为它会在插入/更新期间自动开始跟踪时间戳。
请注意,此解决方案不会为您提供人类可读时间 - 给定的项目是唯一的(只是易于版本化的内容)。如果您想要时间,可以制作一个默认为DATETIME
的{{1}}列(有关详细信息,请参阅here)。插入/更新行时,您将忽略插入/更新该特定列中的任何内容,并为您添加当前GETDATE()
。