diff options
-rw-r--r-- | src/database/row.hpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/database/row.hpp b/src/database/row.hpp index 4dc98be..3703ff7 100644 --- a/src/database/row.hpp +++ b/src/database/row.hpp @@ -50,7 +50,8 @@ struct Row } private: - void insert(DatabaseEngine& db) + template <bool Coucou=true> + void insert(DatabaseEngine& db, typename std::enable_if<is_one_of<Id, T...> && Coucou>::type* = nullptr) { InsertQuery query(this->table_name, this->columns); // Ugly workaround for non portable stuff @@ -58,6 +59,13 @@ struct Row query.execute(db, this->columns); } + template <bool Coucou=true> + void insert(DatabaseEngine& db, typename std::enable_if<!is_one_of<Id, T...> && Coucou>::type* = nullptr) + { + InsertQuery query(this->table_name, this->columns); + query.execute(db, this->columns); + } + void update(DatabaseEngine& db) { UpdateQuery query(this->table_name, this->columns); |