⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 interfaces.hpp

📁 ncbi源码
💻 HPP
📖 第 1 页 / 共 2 页
字号:
    virtual bool BindParam(const string& param_name, CDB_Object* param_ptr,                           bool out_param = false);    virtual bool SetParam(const string& param_name, CDB_Object* param_ptr,                          bool out_param = false);    virtual bool Send();    virtual bool WasSent() const;    virtual bool Cancel();    virtual bool WasCanceled() const;    virtual CDB_Result* Result();    virtual bool HasMoreResults() const;    virtual bool HasFailed() const;    virtual int  RowCount() const;    virtual void DumpResults();    virtual void SetRecompile(bool recompile = true);    virtual void Release();    virtual ~CODBC_RPCCmd();private:    bool x_AssignParams(string& cmd, string& q_exec, string& q_select,		CMemPot& bind_guard, SQLINTEGER* indicator);    bool xCheck4MoreResults();    CODBC_Connection* m_Connect;    SQLHSTMT          m_Cmd;    string            m_Query;    CDB_Params        m_Params;    CODBC_Reporter    m_Reporter;    bool              m_WasSent;    bool              m_HasFailed;    bool              m_Recompile;    bool              m_HasStatus;	bool              m_hasResults;    I_Result*         m_Res;    int               m_RowCount;};/////////////////////////////////////////////////////////////////////////////////  CODBC_CursorCmd:://class NCBI_DBAPIDRIVER_ODBC_EXPORT CODBC_CursorCmd : public I_CursorCmd{    friend class CODBC_Connection;protected:    CODBC_CursorCmd(CODBC_Connection* conn, SQLHSTMT cmd,                  const string& cursor_name, const string& query,                  unsigned int nof_params);    virtual bool BindParam(const string& param_name, CDB_Object* param_ptr);    virtual CDB_Result* Open();    virtual bool Update(const string& table_name, const string& upd_query);    virtual bool UpdateTextImage(unsigned int item_num, CDB_Stream& data, 				 bool log_it = true);    virtual CDB_SendDataCmd* SendDataCmd(unsigned int item_num, size_t size, 					 bool log_it = true);    virtual bool Delete(const string& table_name);    virtual int  RowCount() const;    virtual bool Close();    virtual void Release();    virtual ~CODBC_CursorCmd();private:    bool x_AssignParams(bool just_declare = false);    CDB_ITDescriptor* x_GetITDescriptor(unsigned int item_num);    CODBC_LangCmd m_CursCmd;    CODBC_LangCmd* m_LCmd;    CODBC_Connection* m_Connect;    string          m_Name;    unsigned int    m_FetchSize;    bool            m_IsOpen;    bool            m_IsDeclared;    bool            m_HasFailed;    I_Result*       m_Res;    int             m_RowCount;};/////////////////////////////////////////////////////////////////////////////////  CODBC_BCPInCmd:://class NCBI_DBAPIDRIVER_ODBC_EXPORT CODBC_BCPInCmd : public I_BCPInCmd{    friend class CODBC_Connection;protected:    CODBC_BCPInCmd(CODBC_Connection* con, SQLHDBC cmd,                 const string& table_name, unsigned int nof_columns);    virtual bool Bind(unsigned int column_num, CDB_Object* param_ptr);    virtual bool SendRow();    virtual bool CompleteBatch();    virtual bool Cancel();    virtual bool CompleteBCP();    virtual void Release();    virtual ~CODBC_BCPInCmd();private:    bool x_AssignParams(void* p);    CODBC_Connection* m_Connect;    SQLHDBC     m_Cmd;    string          m_Query;    CDB_Params      m_Params;    bool            m_WasSent;    bool            m_HasFailed;	bool            m_WasBound;	bool            m_HasTextImage;    CODBC_Reporter  m_Reporter;};/////////////////////////////////////////////////////////////////////////////////  CODBC_SendDataCmd:://class NCBI_DBAPIDRIVER_ODBC_EXPORT CODBC_SendDataCmd : public I_SendDataCmd{    friend class CODBC_Connection;protected:    CODBC_SendDataCmd(CODBC_Connection* con, SQLHSTMT cmd, CDB_ITDescriptor& descr,                       size_t nof_bytes, bool logit);    virtual size_t SendChunk(const void* chunk_ptr, size_t nof_bytes);    virtual void   Release();    virtual ~CODBC_SendDataCmd();private:    void xCancel();    CODBC_Connection* m_Connect;    SQLHSTMT          m_Cmd;    CODBC_Reporter    m_Reporter;    size_t            m_Bytes2go;};/////////////////////////////////////////////////////////////////////////////////  CODBC_RowResult:://class NCBI_DBAPIDRIVER_ODBC_EXPORT CODBC_RowResult : public I_Result{    friend class CODBC_LangCmd;    friend class CODBC_RPCCmd;    friend class CODBC_CursorCmd;    friend class CODBC_Connection;protected:    CODBC_RowResult(SQLSMALLINT nof_cols, SQLHSTMT cmd, CODBC_Reporter& r);    virtual EDB_ResType     ResultType() const;    virtual unsigned int    NofItems() const;    virtual const char*     ItemName    (unsigned int item_num) const;    virtual size_t          ItemMaxSize (unsigned int item_num) const;    virtual EDB_Type        ItemDataType(unsigned int item_num) const;    virtual bool            Fetch();    virtual int             CurrentItemNo() const;    virtual CDB_Object*     GetItem(CDB_Object* item_buf = 0);    virtual size_t          ReadItem(void* buffer, size_t buffer_size,                                     bool* is_null = 0);    virtual I_ITDescriptor* GetImageOrTextDescriptor();    CDB_ITDescriptor* GetImageOrTextDescriptor(int item_no,                                                const string& cond);    virtual bool            SkipItem();    virtual ~CODBC_RowResult();	int xGetData(SQLSMALLINT target_type, SQLPOINTER buffer, 		SQLINTEGER buffer_size);    CDB_Object* xLoadItem(CDB_Object* item_buf);    CDB_Object* xMakeItem();    // data    SQLHSTMT          m_Cmd;    // CODBC_Connection* m_Connect;    int               m_CurrItem;    bool              m_EOR;    unsigned int      m_NofCols;    unsigned int      m_CmdNum;#define ODBC_COLUMN_NAME_SIZE 80    typedef struct t_SODBC_ColDescr {        SQLCHAR     ColumnName[ODBC_COLUMN_NAME_SIZE];        SQLUINTEGER ColumnSize;        SQLSMALLINT DataType;        SQLSMALLINT DecimalDigits;    } SODBC_ColDescr;        SODBC_ColDescr* m_ColFmt;    CODBC_Reporter& m_Reporter;};/////////////////////////////////////////////////////////////////////////////////  CODBC_ParamResult:://  CODBC_ComputeResult:://  CODBC_StatusResult:://  CODBC_CursorResult:://class NCBI_DBAPIDRIVER_ODBC_EXPORT CODBC_StatusResult :  public CODBC_RowResult{    friend class CODBC_RPCCmd;    friend class CODBC_Connection;protected:    CODBC_StatusResult(SQLHSTMT cmd, CODBC_Reporter& r) :        CODBC_RowResult(1, cmd, r){}    virtual EDB_ResType ResultType() const;    virtual ~CODBC_StatusResult();};class NCBI_DBAPIDRIVER_ODBC_EXPORT CODBC_ParamResult :  public CODBC_RowResult{    friend class CODBC_RPCCmd;    friend class CODBC_Connection;protected:    CODBC_ParamResult(SQLSMALLINT nof_cols, SQLHSTMT cmd, CODBC_Reporter& r) :        CODBC_RowResult(nof_cols, cmd, r){}    virtual EDB_ResType ResultType() const;    virtual ~CODBC_ParamResult();};class NCBI_DBAPIDRIVER_ODBC_EXPORT CODBC_CursorResult : public I_Result{    friend class CODBC_CursorCmd;protected:    CODBC_CursorResult(CODBC_LangCmd* cmd);    virtual EDB_ResType     ResultType() const;    virtual unsigned int    NofItems() const;    virtual const char*     ItemName    (unsigned int item_num) const;    virtual size_t          ItemMaxSize (unsigned int item_num) const;    virtual EDB_Type        ItemDataType(unsigned int item_num) const;    virtual bool            Fetch();    virtual int             CurrentItemNo() const;    virtual CDB_Object*     GetItem(CDB_Object* item_buff = 0);    virtual size_t          ReadItem(void* buffer, size_t buffer_size,                                     bool* is_null = 0);    virtual I_ITDescriptor* GetImageOrTextDescriptor();    virtual bool            SkipItem();    virtual ~CODBC_CursorResult();    // data    CODBC_LangCmd* m_Cmd;    CDB_Result*  m_Res;	bool m_EOR;};END_NCBI_SCOPE#endif  /* DBAPI_DRIVER_ODBC___INTERFACES__HPP *//* * =========================================================================== * $Log: interfaces.hpp,v $ * Revision 1000.1  2004/04/21 14:47:31  gouriano * PRODUCTION: UPGRADED [CATCHUP_003] Dev-tree R1.7 * * Revision 1.7  2003/07/17 20:43:17  soussov * connections pool improvements * * Revision 1.6  2003/06/06 18:43:15  soussov * Removes SetPacketSize() * * Revision 1.5  2003/06/05 15:57:02  soussov * adds DumpResults method for LangCmd and RPC, SetResultProcessor method for Connection interface * * Revision 1.4  2003/05/05 20:45:51  ucko * Lowercase header names for compatibility with Unix. * * Revision 1.3  2003/02/13 15:43:44  ivanov * Added export specifier NCBI_DBAPIDRIVER_ODBC_EXPORT for class definitions * * Revision 1.2  2002/07/03 21:48:08  soussov * adds DSN support if needed * * Revision 1.1  2002/06/18 22:00:53  soussov * initial commit * * =========================================================================== */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -