为数据表增加预定义列或删除数据表的预定义列。设置预定义列后,在创建二级索引时将预定义列作为索引表的索引列或者属性列。
前提条件
- 已初始化Client。具体操作,请参见初始化。
- 已创建数据表。
增加预定义列
使用二级索引时,如果未设置预定义列或者预定义列不满足需求,可以为数据表增加预定义列。
- 参数
参数 说明 tableName 数据表名称。 definedColumns 为数据表预先定义一些非主键列以及其类型,可以作为索引表的属性列或索引列。包含如下设置: - name:预定义列名称。
- type:预定义列的数据类型。
- 示例
为sampleTable数据表增加预定义列,预定义列分别为definedColumnName01(String类型)、definedColumnName02(INTEGER类型)和definedColumnName03(String类型)。
public static void addDefinedColumnRequest(SyncClient client) { AddDefinedColumnRequest addDefinedColumnRequest = new AddDefinedColumnRequest(); addDefinedColumnRequest.setTableName("sampleTable"); addDefinedColumnRequest.addDefinedColumn("definedColumnName01",DefinedColumnType.STRING); addDefinedColumnRequest.addDefinedColumn("definedColumnName02",DefinedColumnType.INTEGER); addDefinedColumnRequest.addDefinedColumn("definedColumnName03",DefinedColumnType.STRING); client.addDefinedColumn(addDefinedColumnRequest); }
删除预定义列
删除数据表上不需要的预定义列。
- 参数
参数 说明 tableName 数据表名称。 name 预定义列名称。 - 示例
删除sampleTable数据表的预定义列definedColumnName01和definedColumnName02。
public static void deleteDefinedColumnRequest(SyncClient client){ DeleteDefinedColumnRequest deleteDefinedColumnRequest = new DeleteDefinedColumnRequest(); deleteDefinedColumnRequest.setTableName("sampleTable"); deleteDefinedColumnRequest.addDefinedColumn("definedColumnName01"); deleteDefinedColumnRequest.addDefinedColumn("definedColumnName02"); client.deleteDefinedColumn(deleteDefinedColumnRequest); }