rt

解决方案 »

  1.   

    /*SQLColumn.h*/
    #ifndef __SQLCOLUMN#define __SQLCOLUMN#include "sqlext.h"
    class CSQLColumn {
    public:
    CSQLColumn();
    ~CSQLColumn();public:
    CString m_svValue;
    int m_nCol;
    int m_nType;
    };#endif //__SQLCOLUMN
      

  2.   

    /*SQLDirect.h*/#ifndef __SQLDIRECT
    #define __SQLDIRECT#include "sqlcolumn.h"#pragma comment(lib, "odbc32.lib")class CSQLDirect {
    public:
    CSQLDirect();
    CSQLDirect( LPCSTR, LPCSTR, LPCSTR );
    ~CSQLDirect(); void InitODBC( void );
    void GetError( CString& );
    void Close( void );
    int ExecuteSQL( LPCSTR );
    int Connect( LPCSTR, LPCSTR, LPCSTR );
    int Fetch( void );
    int GetColumnID( CString,CString );
    int GetColumnType( int );
    CString GetCol( int );
    CString GetCol( CString,CString = _T("") );
    CString GetColumnName( int );
    int GetNumColumns(); inline void CSQLDirect::SupressErrors( bool bSupress = true ) { m_bSupressErrors=bSupress; }private:
    void KillCols( void );
    void AddColumn( int,CString );
    void DisplayError( void );
    int FindColumn( int );
    CSQLColumn* GetColumn( int );private:
    HENV m_hEnv;
    HDBC m_hDBC;
    HSTMT m_hStmt;
    CPtrArray m_ColArray;
    bool m_bSupressErrors;
    };#endif // __SQL
      

  3.   

    /*SQLColumn.cpp*/
    #include "stdafx.h"
    #include "sqlcolumn.h"CSQLColumn::CSQLColumn()
    {
    m_nCol=0;
    m_nType=SQL_C_DEFAULT;
    m_svValue="";
    }CSQLColumn::~CSQLColumn()
    {
    }