51 kcenon::common::VoidResult
shutdown()
override;
66 kcenon::common::Result<core::database_result>
select_query(
const std::string& query_string)
override;
74 kcenon::common::VoidResult
execute_query(
const std::string& query_string)
override;
Abstract base class for database backends.
Manages PostgreSQL database operations.
std::string last_error_
Last error message.
kcenon::common::VoidResult begin_transaction() override
Begin a transaction.
postgres_manager(void)
Default constructor.
std::string last_error() const override
Get last error message from backend.
bool in_transaction_
Whether a transaction is active.
kcenon::common::VoidResult shutdown() override
Shutdown the database backend gracefully.
kcenon::common::Result< uint64_t > execute_modification_query(const std::string &query_string)
Common implementation for INSERT, UPDATE, and DELETE queries.
virtual ~postgres_manager(void)
Destructor.
bool initialized_
Whether the backend is initialized.
std::map< std::string, std::string > connection_info() const override
Get backend-specific connection information.
kcenon::common::VoidResult initialize(const core::connection_config &config) override
Initialize the database backend.
kcenon::common::VoidResult execute_query(const std::string &query_string) override
Executes a general SQL query (DDL, DML) on PostgreSQL.
bool is_initialized() const override
Check if backend is initialized and ready.
kcenon::common::VoidResult commit_transaction() override
Commit the current transaction.
std::string connection_string_
Connection string for connection_info.
kcenon::common::VoidResult rollback_transaction() override
Rollback the current transaction.
database_types type() const override
Returns the specific type of the database.
bool in_transaction() const override
Check if backend is currently in a transaction.
void * connection_
Pointer to the underlying PostgreSQL connection object.
kcenon::common::Result< core::database_result > select_query(const std::string &query_string) override
Executes a SELECT query on the connected PostgreSQL database and returns the resulting data.
Abstract interface for database backends.
database_types
Represents various database backends or modes.
Configuration for database connection.