1 #ifndef CPPCORE__DBAPI__SIMPLE__SDBAPI_IMPL__HPP
2 #define CPPCORE__DBAPI__SIMPLE__SDBAPI_IMPL__HPP
51 bool HandleMessage(
int severity,
int msgnum,
const string& message);
122 const string& tableName,
231 virtual const vector<unsigned char>&
AsVector(
void)
const;
256 const vector<unsigned char>&
AsVector(
void)
const override;
unique_ptr< I_BlobDescriptor > m_Descr
CRef< CDatabaseImpl > m_DBImpl
unique_ptr< CWStream > m_OStream
const CDB_Exception::SContext & x_GetContext(void) const
CNcbiOstream & GetOStream(size_t blob_size, TBlobOStreamFlags flags)
CBlobBookmarkImpl(CDatabaseImpl *db_impl, I_BlobDescriptor *descr)
Object used to store bookmarks to blobs to be changed later.
void x_CheckCanWrite(int col)
CRef< CDB_Exception::SContext > m_Context
void Bind(int col, ESDB_Type type)
void AddOrderHint(CTempString columns)
void x_CheckWriteStarted(void)
CBulkInsertImpl(CDatabaseImpl *db_impl, const string &tableName, int autoflush)
const CDB_Exception::SContext & x_GetContext(void) const
void WriteVal(const T &val)
void SetHints(CTempString hints)
CRef< CDatabaseImpl > m_DBImpl
void AddHint(IBulkInsert::EHints hint, unsigned int value)
vector< CVariant > m_Cols
void SetTimeout(const CTimeout &timeout)
CRef< CDB_Exception::SContext > m_Context
virtual ~CConnHolder(void)
CConnHolder(const CConnHolder &)
bool m_ContinueAfterRaiserror
list< string > m_PrintOutput
CRef< CSDB_UserHandler > m_Handler
CConnHolder & operator=(const CConnHolder &)
IConnection * GetConn(void) const
CConnHolder(IConnection *conn, const CSDB_ConnectionParam ¶ms)
const CDB_Exception::SContext & GetContext(void) const
const list< string > & GetPrintOutput(void) const
void Connect(const CSDB_ConnectionParam ¶ms)
CRef< CConnHolder > m_Conn
const list< string > & GetPrintOutput(void) const
IConnection * GetConnection(void)
const CDB_Exception::SContext & GetContext(void) const
bool EverConnected() const
void SetTimeout(const CTimeout &timeout)
const CDB_Exception::SContext & x_GetContext(void) const override
CLocalQFB(CVariant *value, const CDB_Exception::SContext &context)
const CVariant * GetValue(void) const override
unique_ptr< CVariant > m_Value
unique_ptr< CDB_Exception::SContext > m_Context
ESP_ParamType GetParamType(void) const
void SetParamType(ESP_ParamType type)
ESP_ParamType m_ParamType
CParamQFB(CVariant *value, const CDB_Exception::SContext &context, ESP_ParamType param_type)
unique_ptr< CNcbiIstrstream > m_IStream
Stream to cache BLOB value.
CRef< CQueryFieldImpl > Detach(void) override
const vector< unsigned char > & AsVector(void) const override
CNcbiOstream & GetOStream(size_t blob_size, TBlobOStreamFlags flags) const override
CBlobBookmark GetBookmark(void) const override
CQueryBlobImpl(CQueryImpl *q, unsigned int col_num)
string m_ValueForStream
String to cache BLOB value.
CNcbiIstream & AsIStream(void) const override
vector< unsigned char > m_Vector
Vector to cache BLOB value.
unique_ptr< CNcbiOstream > m_OStream
Stream to change BLOB value.
const CDB_Exception::SContext & x_GetContext(void) const
virtual CNcbiOstream & GetOStream(size_t blob_size, TBlobOStreamFlags flags) const
virtual CNcbiIstream & AsIStream(void) const
const CVariant * GetValue(void) const
virtual CRef< CQueryFieldImpl > Detach(void)
virtual const vector< unsigned char > & AsVector(void) const
CQueryFieldImpl(CQueryImpl *q, unsigned int col_num)
unique_ptr< IQueryFieldBasis > m_Basis
virtual CBlobBookmark GetBookmark(void) const
unsigned int GetRowNo(CQuery::EHowMuch how_much=CQuery::eAllResultSets) const
const list< string > & GetPrintOutput(void) const
void SetSql(CTempString sql)
ICallableStatement * m_CallStmt
unsigned int GetResultSetNo(void) const
void x_InitRSFields(void)
void ClearParameter(CTempString name)
unsigned int m_MaxRowCount
unsigned int GetMaxRowCount(void) const
void x_CheckCanWork(bool need_rs=false) const
void SetNullParameter(CTempString name, ESDB_Type type, ESP_ParamType param_type)
void x_SetOutParameter(const string &name, const CVariant &value)
void SetParameter(CTempString name, const T &value, ESDB_Type type, ESP_ParamType param_type)
CRef< CDatabaseImpl > m_DBImpl
int GetStatus(void) const
void x_InitBeforeExec(void)
void Execute(const CTimeout &timeout)
void ExecuteSP(CTempString sp, const CTimeout &timeout)
unsigned int GetMinRowCount(void) const
CDatabaseImpl * GetDatabase(void) const
void SetIgnoreBounds(bool is_ignore)
bool m_ReportedWrongRowCount
CQueryImpl(CDatabaseImpl *db_impl)
map< string, CQuery::CField > TParamsMap
unsigned int m_MinRowCount
void x_ClearAllParams(void)
unsigned int GetTotalColumns(void) const
CRef< CDB_Exception::SContext > m_Context
string GetColumnName(unsigned int col) const
const CQuery::CField & GetParameter(CTempString name)
void ClearParameters(void)
IConnection * GetConnection(void)
const CQuery::CRow & GetRow(void) const
bool HasMoreResultSets(void)
bool m_RowUnderConstruction
void x_DetachAllFields(void)
ESDB_Type GetColumnType(unsigned int col) const
unsigned int m_CurRelRowNo
void RequireRowCount(unsigned int min_rows, unsigned int max_rows)
const CQuery::CField & GetColumn(const CDBParamVariant &col) const
void x_CheckRowCount(void)
bool IsFinished(CQuery::EHowMuch how_much=CQuery::eThisResultSet) const
void VerifyDone(CQuery::EHowMuch how_much=CQuery::eThisResultSet)
const CDB_Exception::SContext & x_GetContext(void) const
int GetRowCount(void) const
const CVariant & GetFieldValue(unsigned int col_num)
Class representing value in result set or output parameter of stored procedure.
A full row of result data.
EHowMuch
Whether to consider just the current result set or all result sets, in MultiSet mode.
CRemoteQFB(CQueryImpl &query, unsigned int col_num)
CBlobBookmark GetBookmark(void) const override
const CDB_Exception::SContext & x_GetContext(void) const override
const CVariant * GetValue(void) const override
CNcbiOstream * GetOStream(size_t blob_size, TBlobOStreamFlags flags) const override
Convenience class to initialize database connection parameters from URL-like strings and/or applicati...
bool HandleIt(CDB_Exception *ex)
Handle the exceptions resulting from a native API call, one-by-one.
CSDB_UserHandler(CConnHolder &conn)
bool HandleMessage(int severity, int msgnum, const string &message)
Handle message resulting from a native API call.
CTempString implements a light-weight string on top of a storage buffer whose lifetime management is ...
CTimeout – Timeout interval.
virtual const CDB_Exception::SContext & x_GetContext(void) const =0
virtual const CVariant * GetValue(void) const =0
virtual CBlobBookmark GetBookmark(void) const
virtual CNcbiOstream * GetOStream(size_t blob_size, TBlobOStreamFlags flags) const
virtual ~IQueryFieldBasis()
Defines the database API innterfaces for a variety of DBMS.
static CS_CONNECTION * conn
static const column_t columns[]
EHints
Type of hint that can be set.
uint32_t Uint4
4-byte (32-bit) unsigned integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
IO_PREFIX::istream CNcbiIstream
Portable alias for istream.
const GenericPointer< typename T::ValueType > T2 value
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.
ESDB_Type
Database types used throughout API.
ESP_ParamType
Stored procedure and statement parameter types.
static CS_CONTEXT * context