added date_type_t, time_type_t and timestamp, ensure allocated postgres resources are released, split repository into basic_repository and repository.
This commit is contained in:
@@ -31,8 +31,9 @@ public:
|
||||
void write_value(size_t pos, const bool &x) override;
|
||||
void write_value(size_t pos, const float &x) override;
|
||||
void write_value(size_t pos, const double &x) override;
|
||||
void write_value(size_t pos, const time &x ) override;
|
||||
void write_value(size_t pos, const date &x ) override;
|
||||
void write_value(size_t pos, const utils::date_type_t &x ) override;
|
||||
void write_value(size_t pos, const utils::time_type_t &x ) override;
|
||||
void write_value(size_t pos, const utils::timestamp &x ) override;
|
||||
void write_value(size_t pos, const char *x) override;
|
||||
void write_value(size_t pos, const char *x, size_t size) override;
|
||||
void write_value(size_t pos, const std::string &x) override;
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace matador::backends::postgres {
|
||||
class postgres_statement final : public sql::statement_impl
|
||||
{
|
||||
public:
|
||||
postgres_statement(PGconn *db, std::string name, const sql::query_context &query);
|
||||
postgres_statement(PGconn *db, PGresult *res, std::string name, const sql::query_context &query);
|
||||
~postgres_statement() override;
|
||||
|
||||
utils::result<size_t, utils::error> execute(const sql::parameter_binder& bindings) override;
|
||||
utils::result<std::unique_ptr<sql::query_result_impl>, utils::error> fetch(const sql::parameter_binder& bindings) override;
|
||||
@@ -21,6 +22,7 @@ protected:
|
||||
|
||||
private:
|
||||
PGconn *db_{nullptr};
|
||||
PGresult *res_ = nullptr;
|
||||
|
||||
std::string name_;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user