我正在使用clickhouse中的外部字典连接mongodb。它可以很好地处理整数和字符串,但当涉及数组(uint8)时,它会错误地说表不存在错误:代码:50,e.displaytext()=db::exception:未知类型数组(uint8),e.what()=db::exception有没有办法在mongodb的外部命令和访问数组中声明数组(uint8)为属性?
4uqofj5v1#
当前不支持对字典使用复合类型。以下是所有支持的类型。
AttributeUnderlyingType getAttributeUnderlyingType(const std::string & type) { static const std::unordered_map<std::string, AttributeUnderlyingType> dictionary{ { "UInt8", AttributeUnderlyingType::UInt8 }, { "UInt16", AttributeUnderlyingType::UInt16 }, { "UInt32", AttributeUnderlyingType::UInt32 }, { "UInt64", AttributeUnderlyingType::UInt64 }, { "UUID", AttributeUnderlyingType::UInt128 }, { "Int8", AttributeUnderlyingType::Int8 }, { "Int16", AttributeUnderlyingType::Int16 }, { "Int32", AttributeUnderlyingType::Int32 }, { "Int64", AttributeUnderlyingType::Int64 }, { "Float32", AttributeUnderlyingType::Float32 }, { "Float64", AttributeUnderlyingType::Float64 }, { "String", AttributeUnderlyingType::String }, { "Date", AttributeUnderlyingType::UInt16 }, { "DateTime", AttributeUnderlyingType::UInt32 }, }; const auto it = dictionary.find(type); if (it != std::end(dictionary)) return it->second; throw Exception{"Unknown type " + type, ErrorCodes::UNKNOWN_TYPE}; }
1条答案
按热度按时间4uqofj5v1#
当前不支持对字典使用复合类型。以下是所有支持的类型。