DCL 4.0
Loading...
Searching...
No Matches
OciField.h
Go to the documentation of this file.
1#ifndef __DCL_OCI_FIELD_H__
2#define __DCL_OCI_FIELD_H__ 20020321
3
4#include "OciData.h"
5
6__DCL_BEGIN_NAMESPACE
7
9
10class OciField : public SQL::Field, public OciData
11{
13protected:
14 OCIDefine* __define;
15
16 // Prepared 필드 데이터, 버퍼의 데이터 OciData::__dataType과 다를 수 있다.
17 ub2 __dataType;
18 // OciData::__dynamicMode = OCI_DYNAMIC_FETCH를 위한 버퍼사이즈
19 ub2 __bufferSize;
20
21 OciQuery* query() const;
22
23public:
24 bool init(SQL::Query* _query, size_t _position);
25
27 virtual ~OciField();
28
29 // interfaces
30 virtual bool isNull() const;
31 virtual const wchar_t* serverDataTypeName() const;
32 virtual bool __getDataSize(size_t* _size, bool _maxSize);
33 virtual bool __getData(
34 void* _pv,
35 size_t* _size,
36 SQL::DataType _dataType
37 );
38
39protected:
40 // implementation
41 static sb4 CallbackDefine(
42 dvoid *octxp,
43 OCIDefine *defnp,
44 ub4 iter,
45 dvoid **bufpp,
46 ub4 **alenpp,
47 ub1 *piecep,
48 dvoid **indpp,
49 ub2 **rcodep
50 );
51
53 OCIDefine* pDefine,
54 ub4 nIterator,
55 dvoid** ppvBuffer,
56 ub4** ppnActualLength,
57 ub1* pnPiece,
58 dvoid** ppvIndicator,
59 ub2** ppnReturnCode
60 );
61};
62
63inline OciQuery* OciField::query() const
64{
65 return (OciQuery*)Field::__queryHandle;
66}
67
68__DCL_END_NAMESPACE
69
70#endif // __DCL_OCI_FIELD_H__
#define DECLARE_CLASSINFO(class_name)
Definition Object.h:210
OciData()
Definition OciData.cpp:47
virtual bool __getDataSize(size_t *_size, bool _maxSize)
Definition OciField.cpp:391
static sb4 CallbackDefine(dvoid *octxp, OCIDefine *defnp, ub4 iter, dvoid **bufpp, ub4 **alenpp, ub1 *piecep, dvoid **indpp, ub2 **rcodep)
Definition OciField.cpp:405
virtual ~OciField()
Definition OciField.cpp:58
bool init(SQL::Query *_query, size_t _position)
Definition OciField.cpp:74
virtual bool __getData(void *_pv, size_t *_size, SQL::DataType _dataType)
Definition OciField.cpp:396
virtual bool isNull() const
Definition OciField.cpp:381
virtual const wchar_t * serverDataTypeName() const
Definition OciField.cpp:386
sb4 onCallbackDefine(OCIDefine *pDefine, ub4 nIterator, dvoid **ppvBuffer, ub4 **ppnActualLength, ub1 *pnPiece, dvoid **ppvIndicator, ub2 **ppnReturnCode)
Definition OciField.cpp:427
DataType
Definition SQLCore.h:62