OCILIB (C and C++ Driver for Oracle)  4.6.3
ocilib Namespace Reference

OCILIB ++ Namespace. More...

Classes

class  Agent
 AQ identified agent for messages delivery. More...
 
class  BindInfo
 Provides SQL bind informations. More...
 
struct  BindResolver
 Internal usage. Allow resolving a native type used by C API from a C++ type in binding operations. More...
 
struct  BindResolverHandleType
 Simplified resolver for handle types. More...
 
struct  BindResolverScalarType
 Simplified resolver for scalar types that do not need translation. More...
 
struct  BindResolverType
 Resolve a bind input / output types. More...
 
class  Collection
 Object identifying the SQL data types VARRAY and NESTED TABLE. More...
 
class  CollectionElement
 Class used for handling transient collection value. it is used internally by the Collection<T> class: More...
 
class  CollectionIterator
 STL compliant Collection Random iterator class. More...
 
class  Column
 Encapsulate a Resultset column or object member properties. More...
 
class  Connection
 A connection or session with a specific database. More...
 
class  Date
 Object identifying the SQL data type DATE. More...
 
class  Dequeue
 Dequeue object for dequeuing messages into an Oracle Queue. More...
 
class  DirectPath
 Oracle Direct path loading encapsulation. More...
 
class  Enqueue
 Enqueue object for queuing messages into an Oracle Queue. More...
 
class  Enum
 Template Enumeration template class providing some type safety to some extends for manipulating enumerated variables. More...
 
class  Environment
 Static class in charge of library initialization / cleanup. More...
 
class  Event
 Subscription Event. More...
 
class  Exception
 Exception class handling all OCILIB errors. More...
 
class  File
 Object identifying the SQL data type BFILE. More...
 
class  Flags
 Template Flags template class providing some type safety to some extends for manipulating flags set variables. More...
 
class  HandleHolder
 Template class providing OCILIB handles auto memory, life cycle and scope management. More...
 
class  Interval
 Object identifying the SQL data type INTERVAL. More...
 
class  Lob
 Object identifying the SQL data type LOB (CLOB, NCLOB and BLOB) More...
 
class  Long
 Object identifying the SQL data type LONG. More...
 
class  Message
 AQ message. More...
 
class  Mutex
 Static class allowing managing mutexes. More...
 
class  Number
 Object identifying the SQL data type NUMBER. More...
 
struct  NumericTypeResolver
 Allow resolving a the C API numeric enumerated type from a C++ type. More...
 
class  Object
 Object identifying the SQL data type OBJECT. More...
 
class  Pool
 A connection or session Pool. More...
 
class  Queue
 Class allowing the administration of Oracle Queues. More...
 
class  QueueTable
 Class allowing the administration of Oracle Queue tables. More...
 
class  Reference
 Object identifying the SQL data type REF. More...
 
class  Resultset
 Database resultset. More...
 
class  Statement
 Object used for executing SQL or PL/SQL statement and returning the produced results. More...
 
class  Streamable
 Abstract class allowing derived classes to be compatible with any type supporting the operator << ocilib::ostring. More...
 
class  Subscription
 Subscription to database or objects changes. More...
 
class  Thread
 static class allowing to manipulate threads More...
 
class  ThreadKey
 Static class allowing to set/get thread local storage (TLS) values for a given unique key. More...
 
class  Timestamp
 Object identifying the SQL data type TIMESTAMP. More...
 
class  Transaction
 Oracle Transaction object. More...
 
class  TypeInfo
 Provides type information on Oracle Database objects. More...
 

Typedefs

typedef std::basic_string< otext, std::char_traits< otext >, std::allocator< otext > > ostring
 string class wrapping the OCILIB otext * type and OTEXT() macros ( see Character sets ) More...
 
typedef void * AnyPointer
 Alias for the generic void pointer.
 
typedef std::vector< unsigned char > Raw
 C++ counterpart of SQL RAW data type.
 
typedef OCI_MutexMutexHandle
 Alias for an OCI_Mutex pointer.
 
typedef OCI_ThreadThreadHandle
 Alias for an OCI_Thread pointer.
 
typedef const void * ThreadId
 Thread Unique ID.
 
typedef void * CallbackPointer
 Alias used for storing user callback method pointers.
 
typedef Enum< OracleVersionValuesOracleVersion
 Oracle Version. More...
 
typedef Enum< DataTypeValuesDataType
 Column data type. More...
 
typedef Enum< NumericTypeValuesNumericType
 Numeric data type. More...
 
typedef Enum< CharsetFormValuesCharsetForm
 Type of charsetForm. More...
 
typedef Enum< CollationIDValuesCollationID
 Type of Collation ID. More...
 
typedef Enum< SeekModeValuesSeekMode
 Seek Modes. More...
 
typedef Enum< OpenModeValuesOpenMode
 Open Modes. More...
 
typedef Enum< LobTypeValuesLobType
 Type of Lob. More...
 
typedef Enum< LongTypeValuesLongType
 Type of Long. More...
 
typedef Enum< FormatTypeValuesFormatType
 Format type. More...
 
typedef Lob< ostring, LobCharacter > Clob
 Class handling CLOB oracle type. More...
 
typedef Lob< ostring, LobNationalCharacter > NClob
 Class handling NCLOB oracle type. More...
 
typedef Lob< Raw, LobBinary > Blob
 Class handling BLOB oracle type. More...
 
typedef Long< ostring, LongCharacter > Clong
 Class handling LONG oracle type. More...
 
typedef Long< Raw, LongBinary > Blong
 Class handling LONG RAW oracle type. More...
 

Enumerations

enum  OracleVersionValues
 Oracle Version enumerated values.
 
enum  DataTypeValues {
  TypeNumeric = OCI_CDT_NUMERIC, TypeDate = OCI_CDT_DATETIME, TypeString = OCI_CDT_TEXT, TypeLong = OCI_CDT_LONG,
  TypeStatement = OCI_CDT_CURSOR, TypeLob = OCI_CDT_LOB, TypeFile = OCI_CDT_FILE, TypeTimestamp = OCI_CDT_TIMESTAMP,
  TypeInterval = OCI_CDT_INTERVAL, TypeRaw = OCI_CDT_RAW, TypeObject = OCI_CDT_OBJECT, TypeCollection = OCI_CDT_COLLECTION,
  TypeReference = OCI_CDT_REF, TypeBoolean = OCI_CDT_BOOLEAN
}
 Data type enumerated values. More...
 
enum  NumericTypeValues {
  NumericShort = OCI_NUM_SHORT, NumericInt = OCI_NUM_INT, NumericBigInt = OCI_NUM_BIGINT, NumericUnsignedShort = OCI_NUM_USHORT,
  NumericUnsignedInt = OCI_NUM_UINT, NumericUnsignedBigInt = OCI_NUM_BIGUINT, NumericDouble = OCI_NUM_DOUBLE, NumericFloat = OCI_NUM_FLOAT,
  NumericNumber = OCI_NUM_NUMBER
}
 Numeric type enumerated values. More...
 
enum  CharsetFormValues { CharsetFormDefault = OCI_CSF_DEFAULT, CharsetFormNational = OCI_CSF_NATIONAL }
 Charset form enumerated values. More...
 
enum  CollationIDValues {
  CollationIDNone = OCI_CCI_NONE, CollationIDNlsComp = OCI_CCI_NLS_COMP, CollationIDNlsSort = OCI_CCI_NLS_SORT, CollationIDNlsSortCI = OCI_CCI_NLS_SORT_CI,
  CollationIDNlsSortAI = OCI_CCI_NLS_SORT_AI, CollationIDNlsSortCS = OCI_CCI_NLS_SORT_CS, CollationIDNlsSortVar1 = OCI_CCI_NLS_SORT_VAR1, CollationIDNlsSortVar1CI = OCI_CCI_NLS_SORT_VAR1_CI,
  CollationIDNlsSortVar1AI = OCI_CCI_NLS_SORT_VAR1_AI, CollationIDNlsSortVar1CS = OCI_CCI_NLS_SORT_VAR1_CS, CollationIDBinary = OCI_CCI_BINARY, CollationIDBinaryCI = OCI_CCI_BINARY_CI,
  CollationIDBinaryAI = OCI_CCI_BINARY_AI
}
 Collation ID enumerated values. More...
 
enum  SeekModeValues { SeekSet = OCI_SEEK_SET, SeekEnd = OCI_SEEK_END, SeekOffset = OCI_SEEK_CUR }
 Seek Modes enumerated values. More...
 
enum  OpenModeValues { ReadOnly = OCI_LOB_READONLY, ReadWrite = OCI_LOB_READWRITE }
 Open Modes enumerated values. More...
 
enum  LobTypeValues
 Lob types enumerated values.
 
enum  LongTypeValues
 Long types enumerated values.
 
enum  FormatTypeValues {
  FormatDate = OCI_FMT_DATE, FormatTimestamp = OCI_FMT_TIMESTAMP, FormatNumeric = OCI_FMT_NUMERIC, FormatBinaryDouble = OCI_FMT_BINARY_DOUBLE,
  FormatBinaryFloat = OCI_FMT_BINARY_FLOAT
}
 Format type enumerated values. More...
 

Functions

template<class T >
static T Check (T result)
 Internal usage. Checks if the last OCILIB function call has raised an error. If so, it raises a C++ exception using the retrieved error handle.
 
ostring MakeString (const otext *result, int size=-1)
 Internal usage. Constructs a C++ string object from the given OCILIB string pointer.
 
Raw MakeRaw (void *result, unsigned int size)
 Internal usage. Constructs a C++ Raw object from the given OCILIB raw buffer.
 
template<class T >
Check (T result)
 Internal usage. Checks if the last OCILIB function call has raised an error. If so, it raises a C++ exception using the retrieved error handle.
 

Detailed Description

OCILIB ++ Namespace.

Typedef Documentation

◆ ostring

string class wrapping the OCILIB otext * type and OTEXT() macros ( see Character sets )

Note

Definition at line 160 of file ocilib.hpp.

◆ OracleVersion

Oracle Version.

Possible values are DataTypeValues

Definition at line 257 of file ocilib.hpp.

◆ DataType

Column data type.

Possible values are DataTypeValues

Definition at line 303 of file ocilib.hpp.

◆ NumericType

Numeric data type.

Possible values are NumericTypeValues

Definition at line 339 of file ocilib.hpp.

◆ CharsetForm

Type of charsetForm.

Possible values are CharsetFormValues

Definition at line 361 of file ocilib.hpp.

◆ CollationID

Type of Collation ID.

Possible values are CollationIDValues

Definition at line 405 of file ocilib.hpp.

◆ SeekMode

Seek Modes.

Possible values are SeekModeValues

Definition at line 430 of file ocilib.hpp.

◆ OpenMode

Open Modes.

Possible values are OpenModeValues

Definition at line 452 of file ocilib.hpp.

◆ LobType

Type of Lob.

Possible values are LobTypeValues

Definition at line 476 of file ocilib.hpp.

◆ LongType

Type of Long.

Possible values are LongTypeValues

Definition at line 498 of file ocilib.hpp.

◆ FormatType

Format type.

Possible values are FormatTypeValues

Definition at line 526 of file ocilib.hpp.

◆ Clob

typedef Lob<ostring, LobCharacter> ocilib::Clob

Class handling CLOB oracle type.

Note
Length and size arguments / returned values are expressed in number of characters

Definition at line 4463 of file ocilib.hpp.

◆ NClob

typedef Lob<ostring, LobNationalCharacter> ocilib::NClob

Class handling NCLOB oracle type.

Note
Length and size arguments / returned values are expressed in number of characters

Definition at line 4474 of file ocilib.hpp.

◆ Blob

typedef Lob<Raw, LobBinary> ocilib::Blob

Class handling BLOB oracle type.

Note
Length and size arguments / returned values are expressed in number of bytes

Definition at line 4485 of file ocilib.hpp.

◆ Clong

typedef Long<ostring, LongCharacter> ocilib::Clong

Class handling LONG oracle type.

Note
Length and size arguments / returned values are expressed in number of characters

Definition at line 49 of file ocilib_impl.hpp.

◆ Blong

typedef Long<Raw, LongBinary> ocilib::Blong

Class handling LONG RAW oracle type.

Note
Length and size arguments / returned values are expressed in number of bytes

Definition at line 60 of file ocilib_impl.hpp.

Enumeration Type Documentation

◆ DataTypeValues

Data type enumerated values.

Enumerator
TypeNumeric 

NUMERIC

TypeDate 

DATE

TypeString 

TEXT

TypeLong 

LONG / LONG RAW

TypeStatement 

SQL CURSOR

TypeLob 

CLOB or BLOB

TypeFile 

FILE

TypeTimestamp 

TIMESTAMP

TypeInterval 

INTERVAL

TypeRaw 

RAW

TypeObject 

Object type

TypeCollection 

Collection

TypeReference 

Object REF

TypeBoolean 

PL/SQL boolean

Definition at line 264 of file ocilib.hpp.

◆ NumericTypeValues

Numeric type enumerated values.

Enumerator
NumericShort 

Signed short

NumericInt 

Signed Integer

NumericBigInt 

Signed Big Integer (Integer or Long Integer depending on the compiler )

NumericUnsignedShort 

Unsigned short

NumericUnsignedInt 

Unsigned Integer

NumericUnsignedBigInt 

Unsigned Big Integer (Integer or Long Integer depending on the compiler )

NumericDouble 

Double

NumericFloat 

Float

NumericNumber 

Number

Definition at line 310 of file ocilib.hpp.

◆ CharsetFormValues

Charset form enumerated values.

Enumerator
CharsetFormDefault 

Database character set will be converted to the server national character set

CharsetFormNational 

Client national character set will be converted to the server national character set

Definition at line 346 of file ocilib.hpp.

◆ CollationIDValues

Collation ID enumerated values.

Enumerator
CollationIDNone 

None

CollationIDNlsComp 

Compare

CollationIDNlsSort 

Sort

CollationIDNlsSortCI 

Sort CI

CollationIDNlsSortAI 

Sort AI

CollationIDNlsSortCS 

Sort CS

CollationIDNlsSortVar1 

Sort VAR 1

CollationIDNlsSortVar1CI 

Sort VAR 1 CI

CollationIDNlsSortVar1AI 

Sort VAR 1 AI

CollationIDNlsSortVar1CS 

Sort VAR 1 CS

CollationIDBinary 

Binary

CollationIDBinaryCI 

Binary CI

CollationIDBinaryAI 

Binary AI

Definition at line 368 of file ocilib.hpp.

◆ SeekModeValues

Seek Modes enumerated values.

Enumerator
SeekSet 

Set the current position within the stream to the given position

SeekEnd 

Set the current position within the stream begin position

SeekOffset 

Set the current position within the stream to the given value offset from the current position

Definition at line 413 of file ocilib.hpp.

◆ OpenModeValues

Open Modes enumerated values.

Enumerator
ReadOnly 

Stream is opened for read access

ReadWrite 

Stream is opened for read / write access

Definition at line 437 of file ocilib.hpp.

◆ FormatTypeValues

Format type enumerated values.

Enumerator
FormatDate 

Date

FormatTimestamp 

Timestamp

FormatNumeric 

All numeric types

FormatBinaryDouble 

BinaryDouble

FormatBinaryFloat 

Binary Float

Definition at line 505 of file ocilib.hpp.