diff options
Diffstat (limited to 'src/dal/pqdataprovider.cpp')
-rw-r--r-- | src/dal/pqdataprovider.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/dal/pqdataprovider.cpp b/src/dal/pqdataprovider.cpp index 3fa8db45..dd91f276 100644 --- a/src/dal/pqdataprovider.cpp +++ b/src/dal/pqdataprovider.cpp @@ -20,30 +20,39 @@ * $Id$ */ + #include "pqdataprovider.h" + namespace tmwserv { namespace dal { + /** * Constructor */ PqDataProvider::PqDataProvider(void) throw() + : mDb(0) { + // NOOP } + /** * Destructor */ PqDataProvider::~PqDataProvider(void) throw() { - disconnect(); + if (mIsConnected) { + disconnect(); + } } + /** * Get the database backend name. */ @@ -54,6 +63,7 @@ PqDataProvider::getDbBackend(void) const return DB_BKEND_POSTGRESQL; } + /** * Create a connection to the database. */ @@ -82,6 +92,7 @@ PqDataProvider::connect(const std::string& dbName, mIsConnected = true; } + /** * Execute a SQL query. */ @@ -131,6 +142,7 @@ PqDataProvider::execSql(const std::string& sql, } } + /** * Close connection to database. */ @@ -141,11 +153,13 @@ PqDataProvider::disconnect(void) return; } - // finish up with Postgre + // finish up with Postgre. PQfinish(mDb); + mDb = 0; mIsConnected = false; } + } // namespace dal } // namespace tmwserv |