- - PR -
VCでCLOB型のストアドの戻り値が取得できない
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-04-26 19:15
VC6.0でオラクルODBCを利用して、ストアドを実行し、その戻り値を取得
するプログラムを作っているんですが、CLOB型が取得できなくて困っています。 誰か教授してください。 環境:Windows2003サーバー Oracle10gお試し版 VC6.0 下記のようなコードとなっています。 ------------------------------------------------------------------------ TestRecordset .h class TestRecordset : public CRecordset { public: TestRecordset (CDatabase* pDatabase = NULL) ; virtual ~TestRecordset () ; DECLARE_DYNAMIC(TestRecordset ) public : void Move( long nrows, WORD wfetchtype ); //{{AFX_FIELD(TestRecordset , CRecordset) CString m_clobOutput; //}}AFX_FIELD //{{AFX_VIRTUAL(TestRecordset ) public: virtual void DoFieldExchange(CFieldExchange* pFX) ; // RFX support //}}AFX_VIRTUAL }; ------------------------------------------------------------------------ TestRecordset.ccp IMPLEMENT_DYNAMIC(TestRecordset, CRecordset) TestRecordset::TestRecordset(CDatabase* pdb) : CRecordset(pdb) { } TestRecordset::~TestRecordset() { } void TestRecordset:: doFieldExchange(CFieldExchange* pFX) { //{{AFX_FIELD_MAP(TestRecordset) pFX->SetFieldType(CFieldExchange :: outputParam); RFX_Text(pFX, "OutCmt", m_strOutCmt); RFX_Text(pFX, "OutOutdata", m_clobOutput, 200000); //}}AFX_FIELD_MAP } void TestRecordset::Move(long nrows, WORD wfetchtype) { if (m_nFields) CRecordset ::Move(nrows, wfetchtype); else m_bBOF = m_bEOF = true; } ------------------------------------------------------------------------ ストアド実行: TestRecordset& selectRecordset; selectRecordset.Open( AFX_DB_USE_DEFAULT_TYPE ,_T("call TestSP (?)")) ; ------------------------------------------------------------------------ よろしくお願いいたします。 |
1