通过describe语句查询表的描述信息,例如字段名称、字段类型等。
说明
关于describe语句的更多信息,请参见查询表的描述信息。
前提条件
- 已初始化Client。具体操作,请参见初始化OTSClient。
- 已创建映射关系。具体操作,请参见创建表的映射关系。
注意事项
表格存储Java SDK从5.13.0版本开始支持SQL查询功能。使用SQL查询功能时,请确保获取了正确的Java SDK版本。关于Java SDK历史迭代版本的更多信息,请参见Java SDK历史迭代版本。
示例
以下示例用于使用describe test_table
语句查询test_table表的描述信息。
private static void getTableDesc(SyncClient client) {
// 创建SQL请求。
SQLQueryRequest request = new SQLQueryRequest("describe test_table");
// 获取SQL的响应结果。
SQLQueryResponse response = client.sqlQuery(request);
// 获取SQL返回值的Schema。
SQLTableMeta tableMeta = response.getSQLResultSet().getSQLTableMeta();
System.out.println("response table schema: " + tableMeta.getSchema());
// 通过SQL ResultSet遍历获取SQL的返回结果。
System.out.println("response resultset:");
SQLResultSet resultSet = response.getSQLResultSet();
while (resultSet.hasNext()) {
SQLRow row = resultSet.next();
System.out.println(row.getString(0) + ", " + row.getString(1) + ", " +
row.getString(2) + ", " + row.getString(3) + ", " +
row.getString(4) + ", " + row.getString(5));
}
}
返回结果示例如下:
response table schema: [Field:STRING, Type:STRING, Null:STRING, Key:STRING, Default:STRING, Extra:STRING]
response resultset:
pk, varchar(1024), NO, PRI, null,
long_value, bigint(20), YES, , null,
double_value, double, YES, , null,
string_value, mediumtext, YES, , null,
bool_value, tinyint(1), YES, , null,