我在Snowflake中有很多表,每天都在使用python脚本更新它们(基本上是重新创建它们)。 我可以在数据库的信息架构中看到上次更改这些表的时间戳,但是如何将列或该信息添加到我们的一个表中?
假设我有一个表客户,并且希望能够看到该表的每一行上次更改的时间。我可以在这里看到此时间戳:
SELECT CONVERT_TIMEZONE('Etc/GMT+9','UTC',last_altered) AS last_changed
FROM "XXXX"."INFORMATION_SCHEMA"."TABLES"
WHERE table_name='CUSTOMERS';
如何将此信息添加到客户表?
答案 0 :(得分:0)
如果您想查看该信息,您的python程序应将该信息添加为每一行中的其他列。我们以前将这些列称为“ WHO COLUMNS”,以下是我们在最终模式中添加到每个表中的WHO WHOLUMN
答案 1 :(得分:0)
最好的选择是向客户表中添加一个附加的审计列,其默认值为current_timestamp
示例:
CREATE TABLE CUSTOMER (column1 varchar, insert_date timestamp default current_timestamp())
在此示例中,您可以使用insert_date来跟踪何时插入该记录。每当您插入这样的行时,该列就会自动填充。
INSERT INTO CUSTOMER(column1) VALUES ('test')