TABLES 和 SCHEMATA 视图 (Account Usage):对 RETENTION_TIME 列的变更¶
对象的数据保留期由对象和账户上设置的保留时间参数设置决定。这些参数是 DATA_RETENTION_TIME _IN_DAYS 和 MIN_DATA_RETENTION_TIME_IN_DAYS。
如果未明确设置对象的保留时间,则该对象将继承其父对象的设置。
如果未在账户级别设置保留时间,则对象的默认保留时间为 1 天。
无论账户级别设置如何,临时对象的最大保留时间均为 1 天。
如果为账户设置了最小保留时间,并且在对象上明确设置了保留时间,则有效保留时间是两者中较大的一个:MAX (DATA_RETENTION_TIME_IN_DAYS、MIN_DATA_RETENTION_TIME_IN_DAYS)。
在以下情况下,下面列出的 Account Usage 视图中的 RETENTION_TIME 列可能会显示错误的值:
如果没有为临时表或架构设置明确的保留时间,并且账户的保留时间设置为 7 天,则 RETENTION_TIME 列值为 7 天。这是错误的。临时对象的最长数据保留时间为 1 天。
如果账户的最短保留时间为 7 天,并且表或架构的保留时间设置为 4 天,则 RETENTION_TIME 列值为 4 天。这是错误的。最短账户保留时间更长,因此会替换为表或架构明确设置的保留时间。
如果表或架构的保留时间设置为 10 天,然后取消设置,则 RETENTION_TIME 列值就是取消设置的值(在本例中为 10)。这可能是错误的。
在当前版本中,下列 ACCOUNT_USAGE 视图的 RETENTION_TIME 列值更改如下:
TABLES 视图
SCHEMATA 视图
- 之前:
在某些情况下,RETENTION_TIME 列显示的对象数据保留时间不正确。
- 现在:
RETENTION_TIME 列将显示表和架构的正确数据保留时间。
有关设置数据保留期的更多信息,请参阅 为对象指定数据保留。
参考:928