21 #ifndef ODBCDATABASE_H 
   22 #define ODBCDATABASE_H 
   24 #include "../Database.h" 
   25 #include "../ConnectionString.h" 
   34 #include <SQLLIB\include\sqlcli.h> 
   35 #include <SQLLIB\include\sqlext.h> 
   36 #include <SQLLIB\include\sqlcli1.h> 
   37 #elif defined INFORMIX_ONLY 
   39 #include <Informix\Client-SDK\incl\cli\sql.h> 
   40 #include <Informix\Client-SDK\incl\cli\sqlext.h> 
   82                         virtual void BeginTransaction( 
const bool readonly );
 
   98                                 return (isDbcAllocated() & m_IsConnected);
 
  109                                 DataCommand nonquery( commType, DataCommand::NONQUERY, stringStatement, 
false );
 
  111                                 (void)innerExecuteCommand( nonquery, tempParams, onCursor, 0 );
 
  122                                 DataCommand nonquery( commType, DataCommand::NONQUERY, stringStatement, 
true );
 
  124                                 (void)innerExecuteCommand( nonquery, tempParams, onCursor, 0 );
 
  136                                 DataCommand nonquery( commType, DataCommand::NONQUERY, stringStatement, 
false );
 
  137                                 (void)innerExecuteCommand( nonquery, vectorOfParameters, onCursor, 0 );
 
  149                                 DataCommand nonquery( commType, DataCommand::NONQUERY, stringStatement, 
true );
 
  150                                 (void)innerExecuteCommand( nonquery, vectorOfParameters, onCursor, 0 );
 
  162                                 DataCommand query( commType, DataCommand::QUERY, stringStatement, 
false );
 
  164                                 return innerExecuteCommand( query, tempParams, onCursor, fetchRows );
 
  177                                 DataCommand query( commType, DataCommand::QUERY, stringStatement, 
false );
 
  178                                 return innerExecuteCommand( query, vectorOfParameters, onCursor, fetchRows );
 
  190                                 DataCommand queryCached( commType, DataCommand::QUERY, stringStatement, 
true );
 
  192                                 return innerExecuteCommand( queryCached, tempParams, onCursor, fetchRows );
 
  205                                 DataCommand queryCached( commType, DataCommand::QUERY, stringStatement, 
true );
 
  206                                 return innerExecuteCommand( queryCached, vectorOfParameters, onCursor, fetchRows );
 
  209                         void ReleaseCursor( 
const bool checkConn );
 
  212                                 return m_HoldCursorInvoked;
 
  222                                 return m_HenvAllocated;
 
  233                         SQLRETURN AllocateEnv();
 
  235                                 return m_HdbcAllocated;
 
  238                         void BindParams( 
const ParametersVector& vectorOfParameters, SQLHANDLE* statementHandle = NULL, 
const unsigned int startIndex = 1 );
 
  240                         DataSet* innerExecuteCommand( 
const DataCommand& command, 
const ParametersVector& vectorOfParameters, 
const bool useCursor = 
false, 
const unsigned int fetchRows = 0 );
 
  243                         DataSet* executeQuery( 
DataCommand& command, 
const bool isCommandCached, SQLHANDLE* statementHandle, 
const bool useCursor, 
const unsigned int fetchRows = 0 );
 
  244                         DataSet* getDataSet( 
DataCommand& command, 
const bool isCommandCached, SQLHANDLE* statementHandle, 
const bool useCursor, 
const unsigned int fetchRows = 0 );
 
  246                         void executeNonQuery( 
DataCommand& command, 
const bool isCommandCached, SQLHANDLE* statementHandle, 
const bool useCursor );
 
  252                         virtual string getErrorInformation( SQLSMALLINT htype, SQLHANDLE handle );
 
  255                         virtual void setSpecificEnvAttr();
 
  256                         virtual string callFormating( 
const string& statementString, 
const ParametersVector& vectorOfParameters );