DCL 4.0
Loading...
Searching...
No Matches
PgQuery.h
Go to the documentation of this file.
1#ifndef __DCL_PG_QUERY_H__
2#define __DCL_PG_QUERY_H__ 20250403
3
4__DCL_BEGIN_NAMESPACE
5
6class PgField;
7class PgParam;
8
9class PgQuery : public SQL::Query
10{
12public:
13 void setErrorStatus(SQL::Error _error, long _SQLCODE,
14 const wchar_t* _filename, int _line);
15 void setErrorStatus(const ByteString& _message,
16 const wchar_t* _filename, int _line);
17
18 PgConnection* conn() const;
19
20protected:
21 ByteString __statementID;
22 ByteString __cursorID;
23
24 sqlda_t* __outSQLDA;
25 sqlda_t* __inSQLDA;
26
29
32protected:
33 bool reset();
34 bool initFields();
35 bool initParams(size_t _paramCount);
36
37public:
38 PgQuery(PgConnection* pConnection);
39 virtual ~PgQuery();
40 virtual void __destroy();
41 virtual bool __prepare(const char* _sql, size_t _sqllen,
42 size_t _paramCount);
43 virtual bool __execute();
44 virtual bool __fetch();
45
46 virtual bool __getField(size_t _index, SQL::Field** _fieldHandleOut);
47 virtual bool __getParam(size_t _index, SQL::Param** _paramHandleOut);
48};
49
50inline void PgQuery::setErrorStatus(SQL::Error _error, long _SQLCODE,
51 const wchar_t* _filename, int _line)
52{
53 conn()->setErrorStatus(
54 _error,
55 _SQLCODE,
56 _filename,
57 _line
58 );
59}
60
61inline void PgQuery::setErrorStatus(const ByteString& _message,
62 const wchar_t* _filename, int _line)
63{
64 conn()->setErrorStatus(
65 _message,
66 _filename,
67 _line
68 );
69}
70
71inline PgConnection* PgQuery::conn() const
72{
73 return (PgConnection*)Query::__connHandle;
74}
75
76__DCL_END_NAMESPACE
77
78#endif // __DCL_PG_QUERY_H__
#define DECLARE_CLASSINFO(class_name)
Definition Object.h:210
void setErrorStatus(SQL::Error _error, long _SQLCODE, const wchar_t *_filename, int _line)
PgQuery(PgConnection *pConnection)
virtual bool __getField(size_t _index, SQL::Field **_fieldHandleOut)
Definition PgQuery.cpp:496
virtual bool __prepare(const char *_sql, size_t _sqllen, size_t _paramCount)
Definition PgQuery.cpp:231
sqlda_t * __outSQLDA
Definition PgQuery.h:24
bool initFields()
Definition PgQuery.cpp:174
PgField * __fields
Definition PgQuery.h:30
virtual ~PgQuery()
Definition PgQuery.cpp:59
bool __cursorDeclared
Definition PgQuery.h:27
virtual void __destroy()
Definition PgQuery.cpp:85
sqlda_t * __inSQLDA
Definition PgQuery.h:25
virtual bool __getParam(size_t _index, SQL::Param **_paramHandleOut)
Definition PgQuery.cpp:504
virtual bool __fetch()
Definition PgQuery.cpp:443
bool __cursorOpened
Definition PgQuery.h:28
bool reset()
Definition PgQuery.cpp:91
PgParam * __params
Definition PgQuery.h:31
bool initParams(size_t _paramCount)
Definition PgQuery.cpp:197
ByteString __statementID
Definition PgQuery.h:21
ByteString __cursorID
Definition PgQuery.h:22
virtual bool __execute()
Definition PgQuery.cpp:311
Error
Definition SQLCore.h:19