我有一张雪花桌。我想更改一列,使其具有默认值。
我想为 LAST_UPDATED 列设置默认值。
我正在运行此查询:
alter table "TEST_STATUS" modify LAST_UPDATED set default CURRENT_TIMESTAMP() ;
我收到以下错误:
不支持的功能“更改列设置默认值”。
如何修改表格?
答案 0 :(得分:0)
答案 1 :(得分:0)
表上的默认值必须具有行为,
某些数据库上的后一种形式只是“重写”了当时和那里的数据,但鉴于雪花是免费的午餐/没有隐藏的成本。如果你想重写你的表(像第二种情况一样推送一个复杂的新值)你应该重写你的表。当你有一个 10 行的简单表格时,这看起来很荒谬,让你像这样跳过箍。但是,当您拥有 TB 级数据的表时,重写所有这些数据需要大量的计算时间,更重要的是绝对不是原子性的,因此需要在结构化数据迁移过程中有意地完成。
就像 Snowflake 的几乎所有内容一样,它旨在完成繁重的工作,因此大任务应该是计划任务。因此,大型重写可能会导致更大的仓库,并暂停入口数据进程。