我想检查java中的cassandra表中是否存在列,然后执行操作(如果存在)。我该怎么做?
您可以通过Metadata class获取表格定义。就像是:
Column column = cluster.getMetadata().getKeyspace("ks-name")
.getTable("table-name").getColumn("column-name");
if (column != null) {
// do your stuff
}
扩展@Alex ott
答案,如果在执行查询后已经有Resultset / Row,那么可以使用此row.getColumnDefinitions().getIndexOf(<columnName>)
检查列中是否已存在该行。如果返回索引是非负的,则该列存在于该行中。
int indx = row.getColumnDefinitions().getIndexOf(columnName);
if(indx > -1){
// column-exists.
}
.