File Annotation

Not logged in
4e2933c620 2015-04-21        kinaba: /***********************************************************************\
4e2933c620 2015-04-21        kinaba: *                               sqltypes.d                              *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                       Windows API header module                       *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                 Translated from MinGW Windows headers                 *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                       Placed into public domain                       *
4e2933c620 2015-04-21        kinaba: \***********************************************************************/
4e2933c620 2015-04-21        kinaba: module win32.sqltypes;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: /* Conversion notes:
4e2933c620 2015-04-21        kinaba:   It's assumed that ODBC >= 0x0300.
4e2933c620 2015-04-21        kinaba: */
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: private import win32.windef;
4e2933c620 2015-04-21        kinaba: private import win32.basetyps; // for GUID
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias byte SCHAR, SQLSCHAR;
4e2933c620 2015-04-21        kinaba: alias int SDWORD, SLONG, SQLINTEGER;
4e2933c620 2015-04-21        kinaba: alias short SWORD, SSHORT, RETCODE, SQLSMALLINT;
4e2933c620 2015-04-21        kinaba: alias ULONG UDWORD;
4e2933c620 2015-04-21        kinaba: alias USHORT UWORD, SQLUSMALLINT;
4e2933c620 2015-04-21        kinaba: alias double SDOUBLE, LDOUBLE;
4e2933c620 2015-04-21        kinaba: alias float SFLOAT;
4e2933c620 2015-04-21        kinaba: alias PVOID PTR, HENV, HDBC, HSTMT, SQLPOINTER;
4e2933c620 2015-04-21        kinaba: alias UCHAR SQLCHAR;
4e2933c620 2015-04-21        kinaba: // #ifndef _WIN64
4e2933c620 2015-04-21        kinaba: alias UDWORD SQLUINTEGER;
4e2933c620 2015-04-21        kinaba: // #endif
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: //static if (ODBCVER >= 0x0300) {
4e2933c620 2015-04-21        kinaba: alias HANDLE SQLHANDLE;
4e2933c620 2015-04-21        kinaba: alias SQLHANDLE SQLHENV, SQLHDBC, SQLHSTMT, SQLHDESC;
4e2933c620 2015-04-21        kinaba: /*
4e2933c620 2015-04-21        kinaba: } else {
4e2933c620 2015-04-21        kinaba: alias void* SQLHENV;
4e2933c620 2015-04-21        kinaba: alias void* SQLHDBC;
4e2933c620 2015-04-21        kinaba: alias void* SQLHSTMT;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: */
4e2933c620 2015-04-21        kinaba: alias SQLSMALLINT SQLRETURN;
4e2933c620 2015-04-21        kinaba: alias HWND SQLHWND;
4e2933c620 2015-04-21        kinaba: alias ULONG BOOKMARK;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias SQLINTEGER SQLLEN, SQLROWOFFSET;
4e2933c620 2015-04-21        kinaba: alias SQLUINTEGER SQLROWCOUNT, SQLULEN;
4e2933c620 2015-04-21        kinaba: alias DWORD SQLTRANSID;
4e2933c620 2015-04-21        kinaba: alias SQLUSMALLINT SQLSETPOSIROW;
4e2933c620 2015-04-21        kinaba: alias wchar SQLWCHAR;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: version(Unicode) {
4e2933c620 2015-04-21        kinaba: 	alias SQLWCHAR SQLTCHAR;
4e2933c620 2015-04-21        kinaba: } else {
4e2933c620 2015-04-21        kinaba: 	alias SQLCHAR  SQLTCHAR;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: //static if (ODBCVER >= 0x0300) {
4e2933c620 2015-04-21        kinaba: alias ubyte  SQLDATE, SQLDECIMAL;
4e2933c620 2015-04-21        kinaba: alias double SQLDOUBLE, SQLFLOAT;
4e2933c620 2015-04-21        kinaba: alias ubyte  SQLNUMERIC;
4e2933c620 2015-04-21        kinaba: alias float  SQLREAL;
4e2933c620 2015-04-21        kinaba: alias ubyte  SQLTIME, SQLTIMESTAMP, SQLVARCHAR;
4e2933c620 2015-04-21        kinaba: alias long   ODBCINT64, SQLBIGINT;
4e2933c620 2015-04-21        kinaba: alias ulong  SQLUBIGINT;
4e2933c620 2015-04-21        kinaba: //}
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct DATE_STRUCT {
4e2933c620 2015-04-21        kinaba: 	SQLSMALLINT year;
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT month;
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT day;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct TIME_STRUCT {
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT hour;
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT minute;
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT second;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct TIMESTAMP_STRUCT {
4e2933c620 2015-04-21        kinaba: 	SQLSMALLINT year;
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT month;
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT day;
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT hour;
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT minute;
4e2933c620 2015-04-21        kinaba: 	SQLUSMALLINT second;
4e2933c620 2015-04-21        kinaba: 	SQLUINTEGER fraction;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: //static if (ODBCVER >= 0x0300) {
4e2933c620 2015-04-21        kinaba: alias DATE_STRUCT SQL_DATE_STRUCT;
4e2933c620 2015-04-21        kinaba: alias TIME_STRUCT SQL_TIME_STRUCT;
4e2933c620 2015-04-21        kinaba: alias TIMESTAMP_STRUCT SQL_TIMESTAMP_STRUCT;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum SQLINTERVAL {
4e2933c620 2015-04-21        kinaba: 	SQL_IS_YEAR = 1,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_MONTH,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_DAY,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_HOUR,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_MINUTE,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_SECOND,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_YEAR_TO_MONTH,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_DAY_TO_HOUR,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_DAY_TO_MINUTE,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_DAY_TO_SECOND,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_HOUR_TO_MINUTE,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_HOUR_TO_SECOND,
4e2933c620 2015-04-21        kinaba: 	SQL_IS_MINUTE_TO_SECOND
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct SQL_YEAR_MONTH_STRUCT {
4e2933c620 2015-04-21        kinaba: 	SQLUINTEGER year;
4e2933c620 2015-04-21        kinaba: 	SQLUINTEGER month;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct SQL_DAY_SECOND_STRUCT {
4e2933c620 2015-04-21        kinaba: 	SQLUINTEGER day;
4e2933c620 2015-04-21        kinaba: 	SQLUINTEGER hour;
4e2933c620 2015-04-21        kinaba: 	SQLUINTEGER minute;
4e2933c620 2015-04-21        kinaba: 	SQLUINTEGER second;
4e2933c620 2015-04-21        kinaba: 	SQLUINTEGER fraction;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct SQL_INTERVAL_STRUCT {
4e2933c620 2015-04-21        kinaba: 	SQLINTERVAL interval_type;
4e2933c620 2015-04-21        kinaba: 	SQLSMALLINT interval_sign;
4e2933c620 2015-04-21        kinaba: 	union _intval {
4e2933c620 2015-04-21        kinaba: 		SQL_YEAR_MONTH_STRUCT year_month;
4e2933c620 2015-04-21        kinaba: 		SQL_DAY_SECOND_STRUCT day_second;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: 	_intval intval;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const SQL_MAX_NUMERIC_LEN = 16;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct SQL_NUMERIC_STRUCT {
4e2933c620 2015-04-21        kinaba: 	SQLCHAR precision;
4e2933c620 2015-04-21        kinaba: 	SQLSCHAR scale;
4e2933c620 2015-04-21        kinaba: 	SQLCHAR sign;
4e2933c620 2015-04-21        kinaba: 	SQLCHAR val[SQL_MAX_NUMERIC_LEN];
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: // } ODBCVER >= 0x0300
4e2933c620 2015-04-21        kinaba: alias GUID SQLGUID;