一、描述
本节涵盖表属性(Table Properties)的增删改操作:
| 操作 | 说明 |
| SET TBLPROPERTIES | 设置或更新表属性,包括主键、排序键、自定义属性、表注释等 |
| UNSET TBLPROPERTIES | 移除指定的表属性 |
二、设置主键 / 排序键 / 自定义属性
ALTER TABLE table_name SET TBLPROPERTIES ( 'primary-key' = 'col_name', 'sort-order' = 'col_name', 'custom-prop' = 'value');
三、修改表属性
ALTER TABLE table_name SET TBLPROPERTIES ('comment' = '新的表描述');
四、移除表属性
— 移除单个属性ALTER TABLE table_name UNSET TBLPROPERTIES ('property_key');– 同时移除多个属性ALTER TABLE table_name UNSET TBLPROPERTIES ('key1', 'key2');
五、注意事项
·Iceberg 不支持 SET NOT NULL(无法确认现有数据是否有 NULL)
·UNSET 不存在的属性不会报错
六、创建基础表
DROP TABLE IF EXISTS tci_set_unset;CREATE TABLE tci_set_unset ( id BIGINT NOT NULL, name STRING) USING tciTBLPROPERTIES ('initial-prop' = 'v1');
七、SET TBLPROPERTIES(设置 primary-key + sort-order)
ALTER TABLE tci_set_unsetSET TBLPROPERTIES ( 'primary-key' = 'id', 'sort-order' = 'name');
八、SET TBLPROPERTIES(修改注释)
ALTER TABLE tci_set_unsetSET TBLPROPERTIES ('comment' = 'TCI 属性测试表');
九、SHOW TBLPROPERTIES 验证
SHOW TBLPROPERTIES tci_set_unset;
十、UNSET TBLPROPERTIES
ALTER TABLE tci_set_unsetUNSET TBLPROPERTIES ('initial-prop');
十一、验证最终状态
SHOW TBLPROPERTIES tci_set_unset;– 确认 initial-prop 已移除,primary-key / sort-order / comment 存在