diff --git a/clickhouse/columns/string.cpp b/clickhouse/columns/string.cpp index 8ea362c4..569a2b5c 100644 --- a/clickhouse/columns/string.cpp +++ b/clickhouse/columns/string.cpp @@ -30,6 +30,20 @@ ColumnFixedString::ColumnFixedString(size_t n) { } +ColumnFixedString::ColumnFixedString(size_t n, const std::vector& data) + : ColumnFixedString(n) +{ + for (const auto& v : data) + Append(v); +} + +ColumnFixedString::ColumnFixedString(size_t n, const std::vector& data) + : ColumnFixedString(n) +{ + for (const auto& v : data) + Append(v); +} + void ColumnFixedString::Append(std::string_view str) { if (str.size() > string_size_) { throw ValidationError("Expected string of length not greater than " diff --git a/clickhouse/columns/string.h b/clickhouse/columns/string.h index f2216f40..38d5a584 100644 --- a/clickhouse/columns/string.h +++ b/clickhouse/columns/string.h @@ -19,14 +19,10 @@ class ColumnFixedString : public Column { explicit ColumnFixedString(size_t n); - template - ColumnFixedString(size_t n, const Values & values) - : ColumnFixedString(n) - { - for (const auto & v : values) - Append(v); - } + explicit ColumnFixedString(size_t n, const std::vector& data); + explicit ColumnFixedString(size_t n, const std::vector& data); + /// Appends one element to the column. void Append(std::string_view str); diff --git a/clickhouse/query.cpp b/clickhouse/query.cpp index 3986064c..aa73b818 100644 --- a/clickhouse/query.cpp +++ b/clickhouse/query.cpp @@ -2,8 +2,6 @@ namespace clickhouse { -const std::string Query::default_query_id = {}; - Query::Query() { } diff --git a/clickhouse/query.h b/clickhouse/query.h index ae98690d..41d4ef54 100644 --- a/clickhouse/query.h +++ b/clickhouse/query.h @@ -116,7 +116,7 @@ class Query : public QueryEvents { return *this; } - static const std::string default_query_id; + static constexpr char default_query_id[] = ""; private: void OnData(const Block& block) override {