These are utility functions which help to build condition object to be used with queries and query builders representing equality condition.
The result condition type for each function is specified as a comment below. Due to possible ambiguities (for example, db::Equals(L"name", L"John")
seems fine but both String and DbValue have constructors accepting const wchar_t*
argument and for compiler it is not obvious that the first argument should be interpreted as string and the second one as value so that final condition would be column = value) you have to exactly specify the type of argument. As an alternative you can use db::eq*()
functions instead.
DbCondition Equals(const String &operand1, const String &operand2); // column1 = column2
DbCondition Equals(const String &operand1, const DbValue &operand2); // column = value
DbCondition Equals(const DbValue &operand1, const String &operand2); // value = column
DbCondition Equals(const DbValue &operand1, const DbValue &operand2); // value1 = value2
DbCondition Equals(const String &operand1, DbCondition operand2); // column = expression
DbCondition Equals(DbCondition operand1, const String &operand2); // expression = column
DbCondition Equals(DbCondition operand1, DbCondition operand2); // expression1 = expression2
DbCondition Equals(const DbValue &operand1, DbCondition operand2); // value = expression
DbCondition Equals(DbCondition operand1, const DbValue &operand2); // expression = value
Namespace: | nitisa::db |
Include: | Nitisa/Db/DbCondition.h |