DCL 3.7.4
Loading...
Searching...
No Matches
PqQuery.h
Go to the documentation of this file.
1#ifndef __DCL_PQ_QUERY_H__
2#define __DCL_PQ_QUERY_H__ 20260106
3
4__DCL_BEGIN_NAMESPACE
5
6#define __FORMAT_TEXT 0
7#define __FORMAT_BINARY 1
8#define __FORMAT_DEFAULT __FORMAT_TEXT
9#define __CURSOR_FETCH_DEFAULT 100
10#define __CURSOR_ENABLED(_conn) (_conn->cursor() >= 0)
11
12class PqField;
13class PqParam;
14
15class PqQuery : public SQL::Query
16{
18public:
19 PqConnection* conn() const;
20
21 bool getValue(int _fieldIndex, const char*& _value, int& _length) const;
22 bool setValue(int _paramIndex, Oid _type, const void* _value, unsigned _length, int _format);
23
24protected:
26 ByteString __stmtID;
27 ByteString __cursorID;
28 ByteString __query;
30
31 //int types[Query::__paramCount];
32 //char* values[Query::__paramCount];
33 //int lengths[Query::__paramCount];
34 //int formats[Query::__paramCount];
35 void* __inBINDs;
38
39 PGresult* __res;
40 int __row;
41
42protected:
43 bool reset();
44
45public:
46 PqQuery(PqConnection* pConnection);
47 virtual ~PqQuery();
48 virtual void __destroy();
49 virtual bool __prepare(
50 const char* _sql, size_t _sqllen, size_t _paramCount
51 );
52
53 virtual bool __execute();
54 virtual bool __fetch();
55
56 virtual bool __getField(size_t _index, SQL::Field** _fieldHandleOut);
57 virtual bool __getParam(size_t _index, SQL::Param** _paramHandleOut);
58};
59
60inline PqConnection* PqQuery::conn() const
61{
62 return (PqConnection*)Query::__connHandle;
63}
64
65__DCL_END_NAMESPACE
66
67#endif // __DCL_PQ_QUERY_H__
#define DECLARE_CLASSINFO(class_name)
Definition Object.h:227
virtual void __destroy()
Definition PqQuery.cpp:86
virtual ~PqQuery()
Definition PqQuery.cpp:71
int __stmtNo
Definition PqQuery.h:25
virtual bool __execute()
Definition PqQuery.cpp:256
int __row
Definition PqQuery.h:40
virtual bool __getParam(size_t _index, SQL::Param **_paramHandleOut)
Definition PqQuery.cpp:469
PqField * __fields
Definition PqQuery.h:36
ByteString __stmtID
Definition PqQuery.h:26
bool reset()
Definition PqQuery.cpp:91
PqQuery(PqConnection *pConnection)
int __nfields
Definition PqQuery.h:29
virtual bool __prepare(const char *_sql, size_t _sqllen, size_t _paramCount)
Definition PqQuery.cpp:162
PqParam * __params
Definition PqQuery.h:37
PGresult * __res
Definition PqQuery.h:39
virtual bool __getField(size_t _index, SQL::Field **_fieldHandleOut)
Definition PqQuery.cpp:461
ByteString __cursorID
Definition PqQuery.h:27
void * __inBINDs
Definition PqQuery.h:35
virtual bool __fetch()
Definition PqQuery.cpp:380
ByteString __query
Definition PqQuery.h:28