AnCH Framework 0.1
Another C++ Hack Framework
 
Loading...
Searching...
No Matches
postgresqlConnection.hpp
1/*
2 ANCH Framework: ANother C++ Hack is a C++ framework based on C++11 standard
3 Copyright (C) 2012 Vincent Lachenal
4
5 This file is part of ANCH Framework.
6
7 ANCH Framework is free software: you can redistribute it and/or modify
8 it under the terms of the GNU Lesser General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11
12 ANCH Framework is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU Lesser General Public License for more details.
16
17 You should have received a copy of the GNU Lesser General Public License
18 along with ANCH Framework. If not, see <http://www.gnu.org/licenses/>.
19*/
20#ifdef ANCH_SQL_POSTGRESQL
21#pragma once
22
23#include "sql/connection.hpp"
24
25
26typedef struct pg_conn PGconn;
27
28
29namespace anch {
30 namespace sql {
31
42
43 // Attributes +
44 private:
46 PGconn* _conn;
47 // Attributes -
48
49 // Constructors +
50 public:
58 PostgreSQLConnection(const std::string& connStr);
59
68
73 // Constructors -
74
75 // Destructor +
79 virtual ~PostgreSQLConnection() noexcept;
80 // Destructor -
81
82 // Methods +
83 protected:
93 virtual ResultSet* executeQuery(const std::string& query) override;
94
104 virtual uint64_t executeUpdate(const std::string& query) override;
105
111 virtual void sendCommit() override;
112
118 virtual void sendRollback() override;
119
125 virtual void sendStartTransaction() override;
126
136 virtual PreparedStatement* makePrepared(const std::string& query) override;
137 // Methods -
138
139 };
140
141 }
142}
143
144#endif // ANCH_SQL_POSTGRESQL
ResultSet * query(const std::string &query)
virtual ~PostgreSQLConnection() noexcept
virtual ResultSet * executeQuery(const std::string &query) override
virtual PreparedStatement * makePrepared(const std::string &query) override
PostgreSQLConnection(const std::string &connStr)
PostgreSQLConnection(const SqlConnectionConfiguration &config)
virtual uint64_t executeUpdate(const std::string &query) override
virtual void sendStartTransaction() override
PostgreSQLConnection(const PostgreSQLConnection &)=delete
virtual void sendRollback() override
virtual void sendCommit() override
SQL prepared statement.
Definition preparedStatement.hpp:43
SQL result representation.
Definition resultSet.hpp:50
SQL namespace.
Definition clauses.hpp:26
AnCH framework base namespace.
Definition app.hpp:28
SQL database connection configuration.
Definition connection.hpp:39