mirror of
https://github.com/rbock/sqlpp11.git
synced 2024-11-15 20:31:16 +08:00
Remove aggregate attribute from trim()
This commit is contained in:
parent
4f9f001fbd
commit
5b2b175b21
@ -57,12 +57,11 @@ namespace sqlpp
|
||||
};
|
||||
|
||||
template <typename Flag, typename Expr>
|
||||
struct trim_t : public expression_operators<trim_t<Flag, Expr>, text>,
|
||||
public alias_operators<trim_t<Flag, Expr>>
|
||||
struct trim_t : public expression_operators<trim_t<Flag, Expr>, text>, public alias_operators<trim_t<Flag, Expr>>
|
||||
{
|
||||
using _traits = make_traits<text, tag::is_expression, tag::is_selectable>;
|
||||
|
||||
using _nodes = detail::type_vector<Expr, aggregate_function>;
|
||||
using _nodes = detail::type_vector<Expr>;
|
||||
using _can_be_null = can_be_null_t<Expr>;
|
||||
using _is_aggregate_expression = std::false_type;
|
||||
|
||||
@ -94,7 +93,6 @@ namespace sqlpp
|
||||
context << ")";
|
||||
return context;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
|
@ -61,7 +61,7 @@ void print_row(Row const& row)
|
||||
std::cout << a << ", " << b << std::endl;
|
||||
}
|
||||
|
||||
int Select(int, char* [])
|
||||
int Select(int, char*[])
|
||||
{
|
||||
MockDb db = {};
|
||||
MockDb::_serializer_context_t printer = {};
|
||||
@ -107,11 +107,12 @@ int Select(int, char* [])
|
||||
std::cout << a << ", " << b << ", " << g << std::endl;
|
||||
}
|
||||
|
||||
for (const auto& row : db(select(all_of(t).as(t), t.gamma).from(t).where(t.alpha > 7).for_update()))
|
||||
for (const auto& row :
|
||||
db(select(all_of(t), t.gamma.as(t)).from(t).where(t.alpha > 7 and trim(t.beta) == "test").for_update()))
|
||||
{
|
||||
int64_t a = row.tabBar.alpha;
|
||||
const std::string b = row.tabBar.beta;
|
||||
const bool g = row.gamma;
|
||||
int64_t a = row.alpha;
|
||||
const std::string b = row.beta;
|
||||
const bool g = row.tabBar;
|
||||
std::cout << a << ", " << b << ", " << g << std::endl;
|
||||
}
|
||||
|
||||
@ -208,20 +209,19 @@ int Select(int, char* [])
|
||||
}
|
||||
|
||||
{
|
||||
auto transaction = start_transaction(db, sqlpp::isolation_level::read_committed);
|
||||
if (db._mock_data._last_isolation_level != sqlpp::isolation_level::read_committed)
|
||||
{
|
||||
std::cout << "Error: transaction isolation level does not match expected level" << std::endl;
|
||||
}
|
||||
|
||||
auto transaction = start_transaction(db, sqlpp::isolation_level::read_committed);
|
||||
if (db._mock_data._last_isolation_level != sqlpp::isolation_level::read_committed)
|
||||
{
|
||||
std::cout << "Error: transaction isolation level does not match expected level" << std::endl;
|
||||
}
|
||||
}
|
||||
db.set_default_isolation_level(sqlpp::isolation_level::read_uncommitted);
|
||||
{
|
||||
auto transaction = start_transaction(db);
|
||||
if (db._mock_data._last_isolation_level != sqlpp::isolation_level::read_uncommitted)
|
||||
{
|
||||
std::cout << "Error: transaction isolation level does not match default level" << std::endl;
|
||||
}
|
||||
auto transaction = start_transaction(db);
|
||||
if (db._mock_data._last_isolation_level != sqlpp::isolation_level::read_uncommitted)
|
||||
{
|
||||
std::cout << "Error: transaction isolation level does not match default level" << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user