DCL 3.7.4
Loading...
Searching...
No Matches
PeParam.h
Go to the documentation of this file.
1#ifndef __DCL_PE_PARAM_H__
2#define __DCL_PE_PARAM_H__ 20250403
3
4__DCL_BEGIN_NAMESPACE
5
6class PeParam : public SQL::Param
7{
9protected:
10 sqlvar_t* __sqlvar;
11 short __indicator;
12 union {
13 int32_t i32;
14 int64_t i64;
15 uint32_t u32;
16 uint64_t u64;
17 float f32;
18 double f64;
19 numeric nu;
20 date dt;
21 timestamp ts;
22 interval ival;
23 } __data;
24 ByteString __bytes;
25
26protected:
27 PeQuery* query() const;
28 PeConnection* conn() const;
29
30public:
31 bool init(SQL::Query* _query, sqlvar_t* _sqlvar);
32#ifdef __DCL_DEBUG
33 void onBeforeExecute();
34#endif
35 bool onAfterExecute();
36
38 virtual ~PeParam();
39
40 // interfaces
41 virtual const wchar_t* serverDataTypeName() const;
42 virtual void setNull();
43
44 virtual bool __setData(
45 _CONST void* _val,
46 size_t _size,
47 SQL::DataType _valType,
48 SQL::DataType _sqlType
49 );
50};
51
52inline PeQuery* PeParam::query() const
53{
54 return (PeQuery*)Param::__queryHandle;
55}
56
58{
59 return query()->conn();
60}
61
62__DCL_END_NAMESPACE
63
64#endif // __DCL_PE_PARAM_H__
#define _CONST
Definition Config.h:325
#define DECLARE_CLASSINFO(class_name)
Definition Object.h:227
virtual void setNull()
Definition PeParam.cpp:118
int64_t i64
Definition PeParam.h:14
timestamp ts
Definition PeParam.h:21
PeConnection * conn() const
Definition PeParam.h:57
virtual const wchar_t * serverDataTypeName() const
Definition PeParam.cpp:113
double f64
Definition PeParam.h:18
int32_t i32
Definition PeParam.h:13
date dt
Definition PeParam.h:20
uint64_t u64
Definition PeParam.h:16
float f32
Definition PeParam.h:17
virtual ~PeParam()
Definition PeParam.cpp:60
virtual bool __setData(_CONST void *_val, size_t _size, SQL::DataType _valType, SQL::DataType _sqlType)
Definition PeParam.cpp:127
numeric nu
Definition PeParam.h:19
PeQuery * query() const
Definition PeParam.h:52
interval ival
Definition PeParam.h:22
bool onAfterExecute()
Definition PeParam.cpp:98
uint32_t u32
Definition PeParam.h:15
bool init(SQL::Query *_query, sqlvar_t *_sqlvar)
Definition PeParam.cpp:64
DataType
Definition SQLCore.h:59