DCL 4.0
Loading...
Searching...
No Matches
MyField.cpp File Reference
#include <dcl/Config.h>
#include <float.h>
#include <math.h>
#include <string.h>
#include <dcl/Object.h>
#include <dcl/size_t.h>
#include <dcl/SQLCore.h>
#include <dcl/OutputStream.h>
#include <dcl/Charset.h>
#include "MyConnection.h"
#include "MyQuery.h"
#include "MyField.h"

Go to the source code of this file.

Macros

#define __TRACE_THIS   0
#define __DCL_TRACE0_N(fmt)
#define __DCL_TRACE1_N(fmt, arg)
#define __DCL_TRACE2_N(fmt, arg1, arg2)
#define __DCL_TRACE3_N(fmt, arg1, arg2, arg3)
#define __DCL_TRACE4_N(fmt, arg1, arg2, arg3, arg4)
#define SQLTYPE_NAME(type, name)
#define __TYPE_IS(_type)

Functions

__DCL_BEGIN_NAMESPACE IMPLEMENT_CLASSINFO (MyField, SQL::Field) MyField
const wchar_t * __dataTypeName (enum_field_types _type, unsigned int _flags)

Macro Definition Documentation

◆ __DCL_TRACE0_N

#define __DCL_TRACE0_N ( fmt)

Definition at line 30 of file MyField.cpp.

◆ __DCL_TRACE1_N

#define __DCL_TRACE1_N ( fmt,
arg )

Definition at line 31 of file MyField.cpp.

◆ __DCL_TRACE2_N

#define __DCL_TRACE2_N ( fmt,
arg1,
arg2 )

Definition at line 32 of file MyField.cpp.

◆ __DCL_TRACE3_N

#define __DCL_TRACE3_N ( fmt,
arg1,
arg2,
arg3 )

Definition at line 33 of file MyField.cpp.

◆ __DCL_TRACE4_N

#define __DCL_TRACE4_N ( fmt,
arg1,
arg2,
arg3,
arg4 )

Definition at line 34 of file MyField.cpp.

◆ __TRACE_THIS

#define __TRACE_THIS   0

Definition at line 22 of file MyField.cpp.

◆ __TYPE_IS

#define __TYPE_IS ( _type)
Value:
(__field->type == _type)

Definition at line 337 of file MyField.cpp.

◆ SQLTYPE_NAME

#define SQLTYPE_NAME ( type,
name )
Value:
case type : return name

Definition at line 222 of file MyField.cpp.

Function Documentation

◆ __dataTypeName()

const wchar_t * __dataTypeName ( enum_field_types _type,
unsigned int _flags )

Definition at line 224 of file MyField.cpp.

225{
226 switch(_type) {
227 SQLTYPE_NAME(MYSQL_TYPE_DECIMAL, L"DECIMAL");
228 case MYSQL_TYPE_TINY :
229 if (_flags & UNSIGNED_FLAG)
230 return L"TINYINT UNSIGNED";
231 return L"TINYINT";
232 case MYSQL_TYPE_SHORT :
233 if (_flags & UNSIGNED_FLAG)
234 return L"SMALLINT UNSIGNED";
235 return L"SMALLINT";
236 case MYSQL_TYPE_LONG:
237 if (_flags & UNSIGNED_FLAG)
238 return L"INTEGER UNSIGNED";
239 return L"INTEGER";
240 SQLTYPE_NAME(MYSQL_TYPE_FLOAT, L"FLOAT");
241 SQLTYPE_NAME(MYSQL_TYPE_DOUBLE, L"DOUBLE");
242 SQLTYPE_NAME(MYSQL_TYPE_NULL, L"NULL-TYPE");
243 SQLTYPE_NAME(MYSQL_TYPE_TIMESTAMP, L"TIMESTAMP");
244 case MYSQL_TYPE_LONGLONG:
245 if (_flags & UNSIGNED_FLAG)
246 return L"BIGINT UNSIGNED";
247 return L"BIGINT";
248 case MYSQL_TYPE_INT24 :
249 if (_flags & UNSIGNED_FLAG)
250 return L"MEDIUMINT UNSIGNED";
251 return L"MEDIUMINT";
252 SQLTYPE_NAME(MYSQL_TYPE_DATE, L"DATE");
253 SQLTYPE_NAME(MYSQL_TYPE_TIME, L"TIME");
254 SQLTYPE_NAME(MYSQL_TYPE_DATETIME, L"DATETIME");
255 SQLTYPE_NAME(MYSQL_TYPE_YEAR, L"YEAR");
256 SQLTYPE_NAME(MYSQL_TYPE_NEWDATE, L"NEWDATE");
257 SQLTYPE_NAME(MYSQL_TYPE_VARCHAR, L"VARCHAR");
258 SQLTYPE_NAME(MYSQL_TYPE_BIT, L"BIT");
259 SQLTYPE_NAME(MYSQL_TYPE_TIMESTAMP2, L"TIMESTAMP2");
260 SQLTYPE_NAME(MYSQL_TYPE_DATETIME2, L"DATETIME");
261 SQLTYPE_NAME(MYSQL_TYPE_TIME2, L"TIME2");
262 SQLTYPE_NAME(MYSQL_TYPE_JSON, L"JSON");
263 SQLTYPE_NAME(MYSQL_TYPE_NEWDECIMAL, L"NEWDECIMAL");
264 SQLTYPE_NAME(MYSQL_TYPE_ENUM, L"ENUM");
265 SQLTYPE_NAME(MYSQL_TYPE_SET, L"SET");
266 case MYSQL_TYPE_TINY_BLOB : // 2^8
267 if (_flags & BINARY_FLAG)
268 return L"TINYBLOB";
269 return L"TINYTEXT";
270 case MYSQL_TYPE_MEDIUM_BLOB: // 2^24
271 if (_flags & BINARY_FLAG)
272 return L"MEDIUMBLOB";
273 return L"MEDIUMTEXT";
274 case MYSQL_TYPE_LONG_BLOB: // 2^32
275 if (_flags & BINARY_FLAG)
276 return L"LONGBLOB";
277 return L"LONGTEXT";
278 case MYSQL_TYPE_BLOB : // 2^16
279 if (_flags & BINARY_FLAG)
280 return L"BLOB";
281 return L"TEXT";
282 SQLTYPE_NAME(MYSQL_TYPE_VAR_STRING, L"VAR STRING");
283 SQLTYPE_NAME(MYSQL_TYPE_STRING, L"STRING");
284 SQLTYPE_NAME(MYSQL_TYPE_GEOMETRY, L"GEOMETRY");
285 SQLTYPE_NAME(MAX_NO_FIELD_TYPES, L"MAX_NO_FIELD_TYPES");
286 default:
287 ;
288 }
289 return L"Unknown Type: Driver Not Support";
290}
#define SQLTYPE_NAME(type, name)
Definition MyField.cpp:222

◆ IMPLEMENT_CLASSINFO()

__DCL_BEGIN_NAMESPACE IMPLEMENT_CLASSINFO ( MyField ,
SQL::Field  )

Definition at line 44 of file MyField.cpp.

47 : Field(NULL)
48{
49 __index = 0;
50 __field = NULL;
51 __bind = NULL;
52}
#define NULL
Definition Config.h:340