执行ALTER TABLE语句为已存在的映射表添加或删除属性列。
说明
关于ALTER TABLE语句的更多信息,请参见DDL 操作。
前提条件
-
已初始化Client。具体操作,请参见初始化Tablestore Client。
-
已创建映射关系。具体操作,请参见创建映射关系。
注意事项
-
请先通过
CREATE TABLE语句为数据表创建映射表,再使用ALTER TABLE语句更新属性列。 -
每条
ALTER TABLE语句仅支持添加或删除一个属性列。如需操作多个属性列,需重复执行ALTER TABLE语句。 -
ALTER TABLE语句只更新映射表的 Schema,不会更新表格存储的数据存储 Schema。 -
ALTER TABLE语句不支持添加或删除映射表的主键列。 -
执行
ALTER TABLE语句后,SQL 引擎会异步刷新映射表,最多需要 30 秒。刷新期间,查询全部属性列时可能不会返回新添加的列。 -
如需修改已有属性列的定义,先使用
DROP COLUMN删除原属性列,再使用ADD COLUMN按新定义添加属性列。
参数
参数 | 说明 |
query | SQL语句,请根据所需功能进行设置。 |
示例
-
为映射表添加属性列
以下示例用于为exampletable映射表添加colvalue(BIGINT类型)属性列。
/// <summary> /// 为exampletable映射表添加colvalue(BIGINT类型)属性列。 /// </summary> /// <param name="otsClient"></param> public static void AlterTableAddColumn(OTSClient otsClient) { SQLQueryRequest sqlQueryRequest = new SQLQueryRequest("alter table exampletable add column colvalue bigint"); otsClient.SQLQuery(sqlQueryRequest); } -
删除映射表的属性列
以下示例用于删除exampletable映射表中的colvalue(BIGINT类型)属性列。
/// <summary> /// 为exampletable映射表删除colvalue(BIGINT类型)属性列。。 /// </summary> /// <param name="otsClient"></param> public static void AlterTableDropColumn(OTSClient otsClient) { SQLQueryRequest sqlQueryRequest = new SQLQueryRequest("alter table exampletable drop column colvalue"); otsClient.SQLQuery(sqlQueryRequest); }
说明
更新映射表属性列时,您可以先删除旧的无用属性列,然后再添加新的属性列。
常见问题
相关文档
该文章对您有帮助吗?