我主要来自一个Sql Server背景,在让MySql使用Microsoft Sync框架(也就是说它不适合快照)时遇到了一些问题,因此我不得不调查Postgres并尝试让它使用Sync框架。
所需的触发器包括对函数“@DBTS”的调用,但在Postgres中找不到与此等价的触发器。
从微软的文档中可以看出:
@@DBTS returns the current database's last-used timestamp value.
A new timestamp value is generated when a row with a timestamp
column is inserted or updated.
在MySql中是这样的:
USE INFORMATION_SCHEMA;
SELECT MAX(UPDATE_TIME) FROM TABLES WHERE UPDATE_TIME < NOW();
有人能告诉我这是什么在博士后?
最佳答案
PostgreSQL不跟踪上次修改表的时间。因此,对于SQL Server的@@DBTS
和MySQL的INFORMATION_SCHEMA.TABLES.UPDATE_TIME
没有等价物。
您也可能对本次讨论感兴趣:
http://archives.postgresql.org/pgsql-general/2009-02/msg01171.php
它实际上是这样说的:“如果您需要知道表最后一次被修改的时间,那么您必须向每个记录行最后一次被更新时间的表添加一个timestamp列”。