* Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/pgconnection.cc,v 1.9 2000/04/22 22:39:15 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/pgconnection.cc,v 1.10 2000/07/27 19:44:01 momjian Exp $
*
*-------------------------------------------------------------------------
*/
// Close the connection only if needed
// This feature will most probably be used by the derived classes that
// need not close the connection after they are destructed.
- if ( pgCloseConnection ) {
+ CloseConnection();
+}
+
+
+// PgConnection::CloseConnection()
+// close down the connection if there is one
+void PgConnection::CloseConnection()
+{
+ // if the connection is open, close it first
+ if ( pgCloseConnection ) {
if(pgResult) PQclear(pgResult);
+ pgResult=NULL;
if(pgConn) PQfinish(pgConn);
+ pgConn=NULL;
+ pgCloseConnection=0;
}
}
+
// PgConnection::connect
// establish a connection to a backend
ConnStatusType PgConnection::Connect(const char* conninfo)
{
+ // if the connection is open, close it first
+ CloseConnection();
+
// Connect to the database
pgConn = PQconnectdb(conninfo);
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pgconnection.h,v 1.7 2000/04/22 22:39:15 tgl Exp $
+ * $Id: pgconnection.h,v 1.8 2000/07/27 19:44:01 momjian Exp $
*
*-------------------------------------------------------------------------
*/
protected:
ConnStatusType Connect(const char* conninfo);
+ void CloseConnection();
string IntToString(int);
// Default constructor is only available to subclasses
PgConnection();