130 case sizeof(int8_t) : {
131 __data.i32 = (int32_t) * (int8_t*)_pv;
132 __sqlvar->sqltype = ECPGt_int;
133 __sqlvar->sqllen =
sizeof(int32_t);
134 __sqlvar->sqldata = (
char*)&__data;
137 case sizeof(int16_t) : {
138 __data.i32 = (int32_t) * (int16_t*)_pv;
139 __sqlvar->sqltype = ECPGt_int;
140 __sqlvar->sqllen =
sizeof(int32_t);
141 __sqlvar->sqldata = (
char*)&__data;
144 case sizeof(int32_t) : {
145 __data.i32 = *(int32_t*)_pv;
146 __sqlvar->sqltype = ECPGt_int;
147 __sqlvar->sqllen =
sizeof(int32_t);
148 __sqlvar->sqldata = (
char*)&__data;
151 case sizeof(int64_t) : {
152 __data.i64 = *(int64_t*)_pv;
154 __sqlvar->sqltype = ECPGt_long;
156 __sqlvar->sqltype = ECPGt_long_long;
158 __sqlvar->sqllen =
sizeof(int64_t);
159 __sqlvar->sqldata = (
char*)&__data;
171 case sizeof(uint8_t) : {
172 __data.i32 = (int32_t) * (uint8_t*)_pv;
173 __sqlvar->sqltype = ECPGt_int;
174 __sqlvar->sqllen =
sizeof(uint32_t);
175 __sqlvar->sqldata = (
char*)&__data;
178 case sizeof(uint16_t) : {
179 __data.i32 = (int32_t) * (uint16_t*)_pv;
180 __sqlvar->sqltype = ECPGt_int;
181 __sqlvar->sqllen =
sizeof(uint32_t);
182 __sqlvar->sqldata = (
char*)&__data;
185 case sizeof(uint32_t) : {
186 __data.i32 = (int32_t) * (uint32_t*)_pv;
187 __sqlvar->sqltype = ECPGt_int;
188 __sqlvar->sqllen =
sizeof(uint32_t);
189 __sqlvar->sqldata = (
char*)&__data;
192 case sizeof(uint64_t) : {
193 __data.i64 = (int64_t) * (uint64_t*)_pv;
195 __sqlvar->sqltype = ECPGt_long;
197 __sqlvar->sqltype = ECPGt_long_long;
199 __sqlvar->sqllen =
sizeof(int64_t);
200 __sqlvar->sqldata = (
char*)&__data;
212 case sizeof(float) : {
213 __data.f32 = *(
float*)_pv;
214 __sqlvar->sqltype = ECPGt_float;
215 __sqlvar->sqllen =
sizeof(float);
216 __sqlvar->sqldata = (
char*)&__data;
219 case sizeof(double) : {
220 __data.f64 = *(
double*)_pv;
221 __sqlvar->sqltype = ECPGt_double;
222 __sqlvar->sqllen =
sizeof(double);
223 __sqlvar->sqldata = (
char*)&__data;
236 __sqlvar->sqltype = ECPGt_date;
237 __sqlvar->sqllen =
sizeof(date);
238 __sqlvar->sqldata = (
char*)&__data;
249 __sqlvar->sqltype = ECPGt_char;
250 __sqlvar->sqllen = (short)__bytes.length();
251 __sqlvar->sqldata = (
char*)__bytes.data();
269 __sqlvar->sqltype = ECPGt_timestamp;
270 __sqlvar->sqllen =
sizeof(timestamp);
271 __sqlvar->sqldata = (
char*)&__data;
282 __sqlvar->sqltype = ECPGt_interval;
283 __sqlvar->sqllen =
sizeof(interval);
284 __sqlvar->sqldata = (
char*)&__data;
295 numeric* p = PGTYPESnumeric_from_asc((
char*)_pv,
NULL);
300 PGTYPESnumeric_copy(p, &__data.nu);
301 __sqlvar->sqltype = ECPGt_numeric;
302 __sqlvar->sqllen =
sizeof(numeric);
303 __sqlvar->sqldata = (
char*)&__data;
315 String::tryString((
const char*)_pv, _size).data());
319 switch (_assignType) {
322 __sqlvar->sqltype = ECPGt_char;
323 __sqlvar->sqllen = (short) _size;
324 __sqlvar->sqldata = (
char*) _pv;
329 __bytes = ByteString::toHexString(
330 (
const char*)_pv, _size, (
size_t)-1,
true);
335 __sqlvar->sqltype = ECPGt_char;
336 __sqlvar->sqllen = (short)__bytes.length();
337 __sqlvar->sqldata = (
char*)__bytes.data();
360 __bytes = ByteString::toHexString(__bytes, (
size_t)-1,
true);
365 __sqlvar->sqltype = ECPGt_char;
366 __sqlvar->sqllen = (short) __bytes.length();
367 __sqlvar->sqldata = (
char*)__bytes.data();
377 Param::__dataType = _assignType;