在Cassandra中使用cqlsh
时,您可以进行describe
查询以获取表格信息,例如:
DESCRIBE TABLE emp;
它会给你一些类似的东西:
CREATE TABLE emp (
empid int PRIMARY KEY,
deptid int,
description text
) ...
....
那么如何使用Astyanax对CQL的支持来查询它。我能用这个查询简单的SELECT
语句:
OperationResult<CqlResult<String, String>> result
= keyspace.prepareQuery(empColumnFamily)
.withCql("Select * from emp;")
.execute();
但这不适用于DESCRIBE
语句。
PD:我真的这样做是为了得到表的DATA TYPES
,稍后解析它并获得例如int, int, text
,所以如果你有不同的方法来获取它们,那么它可能是真棒。
此查询select column, validator from system.schema_columns;
不起作用,因为它不返回复合键。