在最新版本的 Timescale 中,您可以修改压缩超表的 schema。

Schema 修改TimescaleDB 2.1 之前TimescaleDB 2.1 到 2.5TimescaleDB 2.6 及以上
添加可为空的列
添加带有默认值和 NOT NULL 约束的列
重命名列
删除列
更改列的数据类型

要执行压缩超表不支持的操作,请先解压缩该表。

添加可为空的列

ALTER TABLE <hypertable> ADD COLUMN <column_name> <datatype>;

例如

ALTER TABLE conditions ADD COLUMN device_id integer;

请注意,在 TimescaleDB 2.6 之前的版本中,不支持向新列添加约束。

要添加带有默认值和非空约束的列

ALTER TABLE <hypertable> ADD COLUMN <column_name> <datatype>
NOT NULL DEFAULT <default_value>;

例如

ALTER TABLE conditions ADD COLUMN device_id integer
NOT NULL DEFAULT 1;

要重命名列

ALTER TABLE <hypertable> RENAME <column_name> TO <new_name>;

例如

ALTER TABLE conditions RENAME device_id TO devid;

您可以从压缩超表中删除列,如果该列不是 orderbysegmentby 列。要删除列

ALTER TABLE <hypertable> DROP COLUMN <column_name>;

例如

ALTER TABLE conditions DROP COLUMN temperature;

关键词

在此页面上发现问题?报告问题 或 在 GitHub 上编辑此页