更新映射表属性列

更新时间:
复制 MD 格式

通过 Python SDK 为映射表添加或删除属性列。

前提条件

  • 安装Tablestore Python SDK并初始化客户端。

  • SQL 查询功能需要使用 5.4.2 及以上版本,建议使用最新版本。

注意事项

  • 只有通过 CREATE TABLE 语句创建的映射表支持 ALTER TABLE。通过 DESCRIBE 等操作自动绑定的映射表不支持更新属性列。

  • 每条 ALTER TABLE 语句仅支持添加或删除一个属性列。

  • 该操作只更新映射表 Schema,不会更新表格存储的数据存储 Schema,也不支持添加或删除主键列。

  • 执行语句后,SQL 引擎异步刷新映射表,最多需要 30 秒。刷新期间查询全部属性列时可能不会返回新添加的列。

  • 如需修改已有属性列的定义,先删除原属性列,再按新定义添加。

功能说明

调用 exe_sql_query 方法执行 ALTER TABLE 语句,为映射表添加或删除属性列。

def exe_sql_query(self, query)

以下示例为 example_table 添加 new_column 属性列。

query = "ALTER TABLE example_table ADD COLUMN new_column BIGINT"
client.exe_sql_query(query)

参数说明

exe_sql_query 方法包含以下参数。

名称

类型

说明

query(必选)

String

要执行的 ALTER TABLE 语句。

添加属性列时,语法为 ALTER TABLE <mapping_table_name> ADD COLUMN <column_name> <data_type>。

删除属性列时,语法为 ALTER TABLE <mapping_table_name> DROP COLUMN <column_name>。

场景示例

删除属性列

以下示例删除 example_table 中的 new_column 属性列。

query = "ALTER TABLE example_table DROP COLUMN new_column"
client.exe_sql_query(query)