我要做的是仅在元组包含元组类型的情况下保存表中所有列的元数据。
首先,我声明一个键空间和一个带有id(int,PK)和一个元组(int,str,int)的表。
第二,我从命名表中获取元数据。
const CassTableMeta *table_meta = cass_keyspace_meta_table_by_name(keyspace_meta, this->table.c_str());
第三,仅当列为元组类型以及列中每个字段的类型时,我才想遍历表的所有列以获取每个列中的元数据。
CassIterator *iterator = cass_iterator_columns_from_table_meta(table_meta);
while (cass_iterator_next(iterator)) {
if(cass_iterator_type(iterator) == CASS_VALUE_TYPE_TUPLE)
const CassColumnMeta *cmeta = cass_iterator_get_column_meta(iterator);
CassIterator *cit = cass_iterator_fields_from_column_meta(cmeta);
while (cass_iterator_next(cit)) {
//get metadata of every field (int, str, int) using cass_data_type_type(...)
因此,在我的代码更不正确的情况下,我想使用cass_data_type_type(...)获取元组列的元数据和每个字段(int,str,int)的元数据。