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