00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef __C_ORACLECONNECTION_H__
00016 #define __C_ORACLECONNECTION_H__
00017
00018
00019 #include <lOracle.h>
00020
00021
00022 #include <lTypes.h>
00023 #include <lExceptions.h>
00024
00025
00026 #include <cConnection.h>
00027
00028 class DLL_External OracleConnection : public Connection
00029 {
00030 #ifdef POLITE_TEST_FRIEND
00031 friend POLITE_TEST_FRIEND;
00032 #endif // POLITE_TEST_FRIEND
00033
00034 friend class OracleDatabase;
00035 friend class OracleCursor;
00036
00037 protected:
00038 Lda_Def _LDA;
00039 ub1 _HDA[HDA_SIZE];
00040 OracleConnection(
00041 class Database *DB,
00042 const char *UserName,
00043 const char *Password,
00044 const int LocHandle,
00045 const int GlobHandle
00046 );
00047
00048 public:
00049 virtual ~OracleConnection();
00050
00051 protected:
00052 virtual bool _Sql(const char * const SqlCommand);
00053 virtual bool _Commit();
00054 virtual bool _Rollback();
00055 virtual bool _Savepoint(const char * const Name);
00056 virtual bool _RollbackToSavepoint(const char * const Name);
00057
00058 virtual bool _NextOID(long int &nxtoid, long int &nxtsn);
00059
00060 virtual bool _NextSN(long int curoid, long int &nxtsn);
00061
00062
00063 public:
00064 virtual bool Sql(const char * const SqlCommand);
00065 virtual bool Commit();
00066 virtual bool Rollback();
00067 virtual bool Savepoint(const char *Name);
00068 virtual bool RollbackToSavepoint(const char *Name);
00069 virtual bool Disconnect();
00070 virtual bool Abort();
00071 virtual bool Autocommit(bool ac);
00072
00073
00074 protected:
00075 virtual Cursor *_GetNewCursor();
00076 };
00077
00078 #endif //__C_ORACLECONNECTION_H__