1 module etc.c.odbc.odbc32;
2 public:
3 
4 extern (C)
5 {
6 	alias SQLCHAR = ubyte;
7 	alias SQLSCHAR = byte;
8 	alias SQLDATE = ubyte;
9 	alias SQLDECIMAL = ubyte;
10 	alias SQLDOUBLE = double;
11 	alias SQLFLOAT = double;
12 	alias SQLINTEGER = int;
13 	alias SQLUINTEGER = uint;
14 	alias SQLNUMERIC = ubyte;
15 	alias SQLPOINTER = void*;
16 	alias SQLREAL = float;
17 	alias SQLSMALLINT = short;
18 	alias SQLUSMALLINT = ushort;
19 	alias SQLTIME = ubyte;
20 	alias SQLTIMESTAMP = ubyte;
21 	alias SQLVARCHAR = ubyte;
22 	alias SQLTIMEWITHTIMEZONE = ubyte;
23 	alias SQLTIMESTAMPWITHTIMEZONE = ubyte;
24 	alias SQLRETURN = short;
25 	alias SQLHANDLE = int;
26 	alias SQLHENV = int;
27 	alias SQLHDBC = int;
28 	alias SQLHSTMT = int;
29 	alias SQLHDESC = int;
30 	alias RETCODE = short;
31 	alias SQLHWND = void*;
32 	struct tagDATE_STRUCT
33 	{
34 		SQLSMALLINT year = void;
35 		SQLUSMALLINT month = void;
36 		SQLUSMALLINT day = void;
37 	}
38 	alias DATE_STRUCT = tagDATE_STRUCT;
39 	alias SQL_DATE_STRUCT = tagDATE_STRUCT;
40 	struct tagTIME_STRUCT
41 	{
42 		SQLUSMALLINT hour = void;
43 		SQLUSMALLINT minute = void;
44 		SQLUSMALLINT second = void;
45 	}
46 	alias TIME_STRUCT = tagTIME_STRUCT;
47 	alias SQL_TIME_STRUCT = tagTIME_STRUCT;
48 	struct tagTIMESTAMP_STRUCT
49 	{
50 		SQLSMALLINT year = void;
51 		SQLUSMALLINT month = void;
52 		SQLUSMALLINT day = void;
53 		SQLUSMALLINT hour = void;
54 		SQLUSMALLINT minute = void;
55 		SQLUSMALLINT second = void;
56 		SQLUINTEGER fraction = void;
57 	}
58 	alias TIMESTAMP_STRUCT = tagTIMESTAMP_STRUCT;
59 	alias SQL_TIMESTAMP_STRUCT = tagTIMESTAMP_STRUCT;
60 	struct tagTIME_WITH_TIMEZONE_STRUCT
61 	{
62 		SQLUSMALLINT hour = void;
63 		SQLUSMALLINT minute = void;
64 		SQLUSMALLINT second = void;
65 		SQLSMALLINT timezone_hours = void;
66 		SQLUSMALLINT timezone_minutes = void;
67 	}
68 	alias TIME_WITH_TIMEZONE_STRUCT = tagTIME_WITH_TIMEZONE_STRUCT;
69 	alias SQL_TIME_WITH_TIMEZONE_STRUCT = tagTIME_WITH_TIMEZONE_STRUCT;
70 	struct tagTIMESTAMP_WITH_TIMEZONE_STRUCT
71 	{
72 		SQLSMALLINT year = void;
73 		SQLUSMALLINT month = void;
74 		SQLUSMALLINT day = void;
75 		SQLUSMALLINT hour = void;
76 		SQLUSMALLINT minute = void;
77 		SQLUSMALLINT second = void;
78 		SQLUINTEGER fraction = void;
79 		SQLSMALLINT timezone_hours = void;
80 		SQLUSMALLINT timezone_minutes = void;
81 	}
82 	alias TIMESTAMP_WITH_TIMEZONE_STRUCT = tagTIMESTAMP_WITH_TIMEZONE_STRUCT;
83 	alias SQL_TIMESTAMP_WITH_TIMEZONE_STRUCT = tagTIMESTAMP_WITH_TIMEZONE_STRUCT;
84 	enum SQLINTERVAL
85 	{
86 		SQL_IS_YEAR = 1,
87 		SQL_IS_MONTH = 2,
88 		SQL_IS_DAY = 3,
89 		SQL_IS_HOUR = 4,
90 		SQL_IS_MINUTE = 5,
91 		SQL_IS_SECOND = 6,
92 		SQL_IS_YEAR_TO_MONTH = 7,
93 		SQL_IS_DAY_TO_HOUR = 8,
94 		SQL_IS_DAY_TO_MINUTE = 9,
95 		SQL_IS_DAY_TO_SECOND = 10,
96 		SQL_IS_HOUR_TO_MINUTE = 11,
97 		SQL_IS_HOUR_TO_SECOND = 12,
98 		SQL_IS_MINUTE_TO_SECOND = 13,
99 	}
100 	alias SQL_IS_YEAR = SQLINTERVAL.SQL_IS_YEAR;
101 	alias SQL_IS_MONTH = SQLINTERVAL.SQL_IS_MONTH;
102 	alias SQL_IS_DAY = SQLINTERVAL.SQL_IS_DAY;
103 	alias SQL_IS_HOUR = SQLINTERVAL.SQL_IS_HOUR;
104 	alias SQL_IS_MINUTE = SQLINTERVAL.SQL_IS_MINUTE;
105 	alias SQL_IS_SECOND = SQLINTERVAL.SQL_IS_SECOND;
106 	alias SQL_IS_YEAR_TO_MONTH = SQLINTERVAL.SQL_IS_YEAR_TO_MONTH;
107 	alias SQL_IS_DAY_TO_HOUR = SQLINTERVAL.SQL_IS_DAY_TO_HOUR;
108 	alias SQL_IS_DAY_TO_MINUTE = SQLINTERVAL.SQL_IS_DAY_TO_MINUTE;
109 	alias SQL_IS_DAY_TO_SECOND = SQLINTERVAL.SQL_IS_DAY_TO_SECOND;
110 	alias SQL_IS_HOUR_TO_MINUTE = SQLINTERVAL.SQL_IS_HOUR_TO_MINUTE;
111 	alias SQL_IS_HOUR_TO_SECOND = SQLINTERVAL.SQL_IS_HOUR_TO_SECOND;
112 	alias SQL_IS_MINUTE_TO_SECOND = SQLINTERVAL.SQL_IS_MINUTE_TO_SECOND;
113 	struct tagSQL_YEAR_MONTH
114 	{
115 		SQLUINTEGER year = void;
116 		SQLUINTEGER month = void;
117 	}
118 	alias SQL_YEAR_MONTH_STRUCT = tagSQL_YEAR_MONTH;
119 	struct tagSQL_DAY_SECOND
120 	{
121 		SQLUINTEGER day = void;
122 		SQLUINTEGER hour = void;
123 		SQLUINTEGER minute = void;
124 		SQLUINTEGER second = void;
125 		SQLUINTEGER fraction = void;
126 	}
127 	alias SQL_DAY_SECOND_STRUCT = tagSQL_DAY_SECOND;
128 	struct tagSQL_INTERVAL_STRUCT
129 	{
130 		SQLINTERVAL interval_type = void;
131 		SQLSMALLINT interval_sign = void;
132 		union intval { SQL_YEAR_MONTH_STRUCT year_month = void; SQL_DAY_SECOND_STRUCT day_second = void; }
133 	}
134 	alias SQL_INTERVAL_STRUCT = tagSQL_INTERVAL_STRUCT;
135 	alias SQLBIGINT = long;
136 	alias SQLUBIGINT = ulong;
137 	struct tagSQL_NUMERIC_STRUCT
138 	{
139 		SQLCHAR precision = void;
140 		SQLSCHAR scale = void;
141 		SQLCHAR sign = void;
142 		SQLCHAR[SQL_MAX_NUMERIC_LEN] val = void;
143 	}
144 	alias SQL_NUMERIC_STRUCT = tagSQL_NUMERIC_STRUCT;
145 	struct tagSQLGUID
146 	{
147 		SQLUINTEGER Data1 = void;
148 		SQLUSMALLINT Data2 = void;
149 		SQLUSMALLINT Data3 = void;
150 		SQLCHAR[8] Data4 = void;
151 	}
152 	alias SQLGUID = tagSQLGUID;
153 	alias BOOKMARK = uint;
154 	alias SQLWCHAR = ushort;
155 	alias SQLTCHAR = ubyte;
156 	nothrow @nogc SQLRETURN SQLAllocConnect(SQLHENV EnvironmentHandle, SQLHDBC* ConnectionHandle);
157 	nothrow @nogc SQLRETURN SQLAllocEnv(SQLHENV* EnvironmentHandle);
158 	nothrow @nogc SQLRETURN SQLAllocHandle(SQLSMALLINT HandleType, SQLHANDLE InputHandle, SQLHANDLE* OutputHandle);
159 	nothrow @nogc SQLRETURN SQLAllocStmt(SQLHDBC ConnectionHandle, SQLHSTMT* StatementHandle);
160 	nothrow @nogc SQLRETURN SQLBindCol(SQLHSTMT StatementHandle, SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, SQLPOINTER TargetValue, SQLINTEGER BufferLength, SQLINTEGER* StrLen_or_Ind);
161 	deprecated("ODBC API: SQLBindParam is deprecated. Please use SQLBindParameter instead.") deprecated nothrow @nogc SQLRETURN SQLBindParam(SQLHSTMT StatementHandle, SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType, SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision, SQLSMALLINT ParameterScale, SQLPOINTER ParameterValue, SQLINTEGER* StrLen_or_Ind);
162 	nothrow @nogc SQLRETURN SQLCancel(SQLHSTMT StatementHandle);
163 	nothrow @nogc SQLRETURN SQLCancelHandle(SQLSMALLINT HandleType, SQLHANDLE InputHandle);
164 	nothrow @nogc SQLRETURN SQLCloseCursor(SQLHSTMT StatementHandle);
165 	nothrow @nogc SQLRETURN SQLColAttribute(SQLHSTMT StatementHandle, SQLUSMALLINT ColumnNumber, SQLUSMALLINT FieldIdentifier, SQLPOINTER CharacterAttribute, SQLSMALLINT BufferLength, SQLSMALLINT* StringLength, SQLPOINTER NumericAttribute);
166 	nothrow @nogc SQLRETURN SQLColumns(SQLHSTMT StatementHandle, SQLCHAR* CatalogName, SQLSMALLINT NameLength1, SQLCHAR* SchemaName, SQLSMALLINT NameLength2, SQLCHAR* TableName, SQLSMALLINT NameLength3, SQLCHAR* ColumnName, SQLSMALLINT NameLength4);
167 	nothrow @nogc SQLRETURN SQLCompleteAsync(SQLSMALLINT HandleType, SQLHANDLE Handle, RETCODE* AsyncRetCodePtr);
168 	nothrow @nogc SQLRETURN SQLConnect(SQLHDBC ConnectionHandle, SQLCHAR* ServerName, SQLSMALLINT NameLength1, SQLCHAR* UserName, SQLSMALLINT NameLength2, SQLCHAR* Authentication, SQLSMALLINT NameLength3);
169 	nothrow @nogc SQLRETURN SQLCopyDesc(SQLHDESC SourceDescHandle, SQLHDESC TargetDescHandle);
170 	nothrow @nogc SQLRETURN SQLDataSources(SQLHENV EnvironmentHandle, SQLUSMALLINT Direction, SQLCHAR* ServerName, SQLSMALLINT BufferLength1, SQLSMALLINT* NameLength1Ptr, SQLCHAR* Description, SQLSMALLINT BufferLength2, SQLSMALLINT* NameLength2Ptr);
171 	nothrow @nogc SQLRETURN SQLDescribeCol(SQLHSTMT StatementHandle, SQLUSMALLINT ColumnNumber, SQLCHAR* ColumnName, SQLSMALLINT BufferLength, SQLSMALLINT* NameLength, SQLSMALLINT* DataType, SQLUINTEGER* ColumnSize, SQLSMALLINT* DecimalDigits, SQLSMALLINT* Nullable);
172 	nothrow @nogc SQLRETURN SQLDisconnect(SQLHDBC ConnectionHandle);
173 	nothrow @nogc SQLRETURN SQLEndTran(SQLSMALLINT HandleType, SQLHANDLE Handle, SQLSMALLINT CompletionType);
174 	nothrow @nogc SQLRETURN SQLError(SQLHENV EnvironmentHandle, SQLHDBC ConnectionHandle, SQLHSTMT StatementHandle, SQLCHAR* Sqlstate, SQLINTEGER* NativeError, SQLCHAR* MessageText, SQLSMALLINT BufferLength, SQLSMALLINT* TextLength);
175 	nothrow @nogc SQLRETURN SQLExecDirect(SQLHSTMT StatementHandle, SQLCHAR* StatementText, SQLINTEGER TextLength);
176 	nothrow @nogc SQLRETURN SQLExecute(SQLHSTMT StatementHandle);
177 	nothrow @nogc SQLRETURN SQLFetch(SQLHSTMT StatementHandle);
178 	nothrow @nogc SQLRETURN SQLFetchScroll(SQLHSTMT StatementHandle, SQLSMALLINT FetchOrientation, SQLINTEGER FetchOffset);
179 	nothrow @nogc SQLRETURN SQLFreeConnect(SQLHDBC ConnectionHandle);
180 	nothrow @nogc SQLRETURN SQLFreeEnv(SQLHENV EnvironmentHandle);
181 	nothrow @nogc SQLRETURN SQLFreeHandle(SQLSMALLINT HandleType, SQLHANDLE Handle);
182 	nothrow @nogc SQLRETURN SQLFreeStmt(SQLHSTMT StatementHandle, SQLUSMALLINT Option);
183 	nothrow @nogc SQLRETURN SQLGetConnectAttr(SQLHDBC ConnectionHandle, SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER BufferLength, SQLINTEGER* StringLengthPtr);
184 	deprecated("ODBC API: SQLGetConnectOption is deprecated. Please use SQLGetConnectAttr instead.") deprecated nothrow @nogc SQLRETURN SQLGetConnectOption(SQLHDBC ConnectionHandle, SQLUSMALLINT Option, SQLPOINTER Value);
185 	nothrow @nogc SQLRETURN SQLGetCursorName(SQLHSTMT StatementHandle, SQLCHAR* CursorName, SQLSMALLINT BufferLength, SQLSMALLINT* NameLengthPtr);
186 	nothrow @nogc SQLRETURN SQLGetData(SQLHSTMT StatementHandle, SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, SQLPOINTER TargetValue, SQLINTEGER BufferLength, SQLINTEGER* StrLen_or_IndPtr);
187 	nothrow @nogc SQLRETURN SQLGetDescField(SQLHDESC DescriptorHandle, SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier, SQLPOINTER Value, SQLINTEGER BufferLength, SQLINTEGER* StringLength);
188 	nothrow @nogc SQLRETURN SQLGetDescRec(SQLHDESC DescriptorHandle, SQLSMALLINT RecNumber, SQLCHAR* Name, SQLSMALLINT BufferLength, SQLSMALLINT* StringLengthPtr, SQLSMALLINT* TypePtr, SQLSMALLINT* SubTypePtr, SQLINTEGER* LengthPtr, SQLSMALLINT* PrecisionPtr, SQLSMALLINT* ScalePtr, SQLSMALLINT* NullablePtr);
189 	nothrow @nogc SQLRETURN SQLGetDiagField(SQLSMALLINT HandleType, SQLHANDLE Handle, SQLSMALLINT RecNumber, SQLSMALLINT DiagIdentifier, SQLPOINTER DiagInfo, SQLSMALLINT BufferLength, SQLSMALLINT* StringLength);
190 	nothrow @nogc SQLRETURN SQLGetDiagRec(SQLSMALLINT HandleType, SQLHANDLE Handle, SQLSMALLINT RecNumber, SQLCHAR* Sqlstate, SQLINTEGER* NativeError, SQLCHAR* MessageText, SQLSMALLINT BufferLength, SQLSMALLINT* TextLength);
191 	nothrow @nogc SQLRETURN SQLGetEnvAttr(SQLHENV EnvironmentHandle, SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER BufferLength, SQLINTEGER* StringLength);
192 	nothrow @nogc SQLRETURN SQLGetFunctions(SQLHDBC ConnectionHandle, SQLUSMALLINT FunctionId, SQLUSMALLINT* Supported);
193 	nothrow @nogc SQLRETURN SQLGetInfo(SQLHDBC ConnectionHandle, SQLUSMALLINT InfoType, SQLPOINTER InfoValue, SQLSMALLINT BufferLength, SQLSMALLINT* StringLengthPtr);
194 	nothrow @nogc SQLRETURN SQLGetStmtAttr(SQLHSTMT StatementHandle, SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER BufferLength, SQLINTEGER* StringLength);
195 	deprecated("ODBC API: SQLGetStmtOption is deprecated. Please use SQLGetStmtAttr instead.") deprecated nothrow @nogc SQLRETURN SQLGetStmtOption(SQLHSTMT StatementHandle, SQLUSMALLINT Option, SQLPOINTER Value);
196 	nothrow @nogc SQLRETURN SQLGetTypeInfo(SQLHSTMT StatementHandle, SQLSMALLINT DataType);
197 	nothrow @nogc SQLRETURN SQLNumResultCols(SQLHSTMT StatementHandle, SQLSMALLINT* ColumnCount);
198 	nothrow @nogc SQLRETURN SQLParamData(SQLHSTMT StatementHandle, SQLPOINTER* Value);
199 	nothrow @nogc SQLRETURN SQLPrepare(SQLHSTMT StatementHandle, SQLCHAR* StatementText, SQLINTEGER TextLength);
200 	nothrow @nogc SQLRETURN SQLPutData(SQLHSTMT StatementHandle, SQLPOINTER Data, SQLINTEGER StrLen_or_Ind);
201 	nothrow @nogc SQLRETURN SQLRowCount(SQLHSTMT StatementHandle, SQLINTEGER* RowCount);
202 	nothrow @nogc SQLRETURN SQLSetConnectAttr(SQLHDBC ConnectionHandle, SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER StringLength);
203 	deprecated("ODBC API: SQLSetConnectOption is deprecated. Please use SQLSetConnectAttr instead.") deprecated nothrow @nogc SQLRETURN SQLSetConnectOption(SQLHDBC ConnectionHandle, SQLUSMALLINT Option, SQLUINTEGER Value);
204 	nothrow @nogc SQLRETURN SQLSetCursorName(SQLHSTMT StatementHandle, SQLCHAR* CursorName, SQLSMALLINT NameLength);
205 	nothrow @nogc SQLRETURN SQLSetDescField(SQLHDESC DescriptorHandle, SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier, SQLPOINTER Value, SQLINTEGER BufferLength);
206 	nothrow @nogc SQLRETURN SQLSetDescRec(SQLHDESC DescriptorHandle, SQLSMALLINT RecNumber, SQLSMALLINT Type, SQLSMALLINT SubType, SQLINTEGER Length, SQLSMALLINT Precision, SQLSMALLINT Scale, SQLPOINTER Data, SQLINTEGER* StringLength, SQLINTEGER* Indicator);
207 	nothrow @nogc SQLRETURN SQLSetEnvAttr(SQLHENV EnvironmentHandle, SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER StringLength);
208 	deprecated("ODBC API: SQLSetParam is deprecated. Please use SQLBindParameter instead.") deprecated nothrow @nogc SQLRETURN SQLSetParam(SQLHSTMT StatementHandle, SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType, SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision, SQLSMALLINT ParameterScale, SQLPOINTER ParameterValue, SQLINTEGER* StrLen_or_Ind);
209 	nothrow @nogc SQLRETURN SQLSetStmtAttr(SQLHSTMT StatementHandle, SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER StringLength);
210 	deprecated("ODBC API: SQLSetStmtOption is deprecated. Please use SQLSetStmtAttr instead.") deprecated nothrow @nogc SQLRETURN SQLSetStmtOption(SQLHSTMT StatementHandle, SQLUSMALLINT Option, SQLUINTEGER Value);
211 	nothrow @nogc SQLRETURN SQLSpecialColumns(SQLHSTMT StatementHandle, SQLUSMALLINT IdentifierType, SQLCHAR* CatalogName, SQLSMALLINT NameLength1, SQLCHAR* SchemaName, SQLSMALLINT NameLength2, SQLCHAR* TableName, SQLSMALLINT NameLength3, SQLUSMALLINT Scope, SQLUSMALLINT Nullable);
212 	nothrow @nogc SQLRETURN SQLStatistics(SQLHSTMT StatementHandle, SQLCHAR* CatalogName, SQLSMALLINT NameLength1, SQLCHAR* SchemaName, SQLSMALLINT NameLength2, SQLCHAR* TableName, SQLSMALLINT NameLength3, SQLUSMALLINT Unique, SQLUSMALLINT Reserved);
213 	nothrow @nogc SQLRETURN SQLTables(SQLHSTMT StatementHandle, SQLCHAR* CatalogName, SQLSMALLINT NameLength1, SQLCHAR* SchemaName, SQLSMALLINT NameLength2, SQLCHAR* TableName, SQLSMALLINT NameLength3, SQLCHAR* TableType, SQLSMALLINT NameLength4);
214 	nothrow @nogc SQLRETURN SQLTransact(SQLHENV EnvironmentHandle, SQLHDBC ConnectionHandle, SQLUSMALLINT CompletionType);
215 	alias SQLSTATE = ubyte[SQL_SQLSTATE_SIZE + 1];
216 	nothrow @nogc SQLRETURN SQLDriverConnect(SQLHDBC hdbc, SQLHWND hwnd, SQLCHAR* szConnStrIn, SQLSMALLINT cchConnStrIn, SQLCHAR* szConnStrOut, SQLSMALLINT cchConnStrOutMax, SQLSMALLINT* pcchConnStrOut, SQLUSMALLINT fDriverCompletion);
217 	nothrow @nogc SQLRETURN SQLBrowseConnect(SQLHDBC hdbc, SQLCHAR* szConnStrIn, SQLSMALLINT cchConnStrIn, SQLCHAR* szConnStrOut, SQLSMALLINT cchConnStrOutMax, SQLSMALLINT* pcchConnStrOut);
218 	nothrow @nogc SQLRETURN SQLBulkOperations(SQLHSTMT StatementHandle, SQLSMALLINT Operation);
219 	nothrow @nogc SQLRETURN SQLColAttributes(SQLHSTMT hstmt, SQLUSMALLINT icol, SQLUSMALLINT fDescType, SQLPOINTER rgbDesc, SQLSMALLINT cbDescMax, SQLSMALLINT* pcbDesc, SQLINTEGER* pfDesc);
220 	nothrow @nogc SQLRETURN SQLColumnPrivileges(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLCHAR* szTableName, SQLSMALLINT cchTableName, SQLCHAR* szColumnName, SQLSMALLINT cchColumnName);
221 	nothrow @nogc SQLRETURN SQLDescribeParam(SQLHSTMT hstmt, SQLUSMALLINT ipar, SQLSMALLINT* pfSqlType, SQLUINTEGER* pcbParamDef, SQLSMALLINT* pibScale, SQLSMALLINT* pfNullable);
222 	nothrow @nogc SQLRETURN SQLExtendedFetch(SQLHSTMT hstmt, SQLUSMALLINT fFetchType, SQLINTEGER irow, SQLUINTEGER* pcrow, SQLUSMALLINT* rgfRowStatus);
223 	nothrow @nogc SQLRETURN SQLForeignKeys(SQLHSTMT hstmt, SQLCHAR* szPkCatalogName, SQLSMALLINT cchPkCatalogName, SQLCHAR* szPkSchemaName, SQLSMALLINT cchPkSchemaName, SQLCHAR* szPkTableName, SQLSMALLINT cchPkTableName, SQLCHAR* szFkCatalogName, SQLSMALLINT cchFkCatalogName, SQLCHAR* szFkSchemaName, SQLSMALLINT cchFkSchemaName, SQLCHAR* szFkTableName, SQLSMALLINT cchFkTableName);
224 	nothrow @nogc SQLRETURN SQLMoreResults(SQLHSTMT hstmt);
225 	nothrow @nogc SQLRETURN SQLNativeSql(SQLHDBC hdbc, SQLCHAR* szSqlStrIn, SQLINTEGER cchSqlStrIn, SQLCHAR* szSqlStr, SQLINTEGER cchSqlStrMax, SQLINTEGER* pcbSqlStr);
226 	nothrow @nogc SQLRETURN SQLNumParams(SQLHSTMT hstmt, SQLSMALLINT* pcpar);
227 	nothrow @nogc SQLRETURN SQLParamOptions(SQLHSTMT hstmt, SQLUINTEGER crow, SQLUINTEGER* pirow);
228 	nothrow @nogc SQLRETURN SQLPrimaryKeys(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLCHAR* szTableName, SQLSMALLINT cchTableName);
229 	nothrow @nogc SQLRETURN SQLProcedureColumns(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLCHAR* szProcName, SQLSMALLINT cchProcName, SQLCHAR* szColumnName, SQLSMALLINT cchColumnName);
230 	nothrow @nogc SQLRETURN SQLProcedures(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLCHAR* szProcName, SQLSMALLINT cchProcName);
231 	nothrow @nogc SQLRETURN SQLSetPos(SQLHSTMT hstmt, SQLUSMALLINT irow, SQLUSMALLINT fOption, SQLUSMALLINT fLock);
232 	nothrow @nogc SQLRETURN SQLTablePrivileges(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLCHAR* szTableName, SQLSMALLINT cchTableName);
233 	nothrow @nogc SQLRETURN SQLDrivers(SQLHENV henv, SQLUSMALLINT fDirection, SQLCHAR* szDriverDesc, SQLSMALLINT cchDriverDescMax, SQLSMALLINT* pcchDriverDesc, SQLCHAR* szDriverAttributes, SQLSMALLINT cchDrvrAttrMax, SQLSMALLINT* pcchDrvrAttr);
234 	nothrow @nogc SQLRETURN SQLBindParameter(SQLHSTMT hstmt, SQLUSMALLINT ipar, SQLSMALLINT fParamType, SQLSMALLINT fCType, SQLSMALLINT fSqlType, SQLUINTEGER cbColDef, SQLSMALLINT ibScale, SQLPOINTER rgbValue, SQLINTEGER cbValueMax, SQLINTEGER* pcbValue);
235 	nothrow @nogc SQLRETURN SQLAllocHandle(SQLSMALLINT HandleType, SQLHANDLE InputHandle, SQLHANDLE* OutputHandle);
236 	nothrow @nogc SQLRETURN SQLGetNestedHandle(SQLHSTMT ParentStatementHandle, SQLUSMALLINT Col_or_Param_Num, SQLHSTMT* OutputChildStatementHandle);
237 	nothrow @nogc SQLRETURN SQLStructuredTypes(SQLHSTMT StatementHandle, SQLCHAR* CatalogName, SQLSMALLINT NameLength1, SQLCHAR* SchemaName, SQLSMALLINT NameLength2, SQLCHAR* TypeName, SQLSMALLINT NameLength3);
238 	nothrow @nogc SQLRETURN SQLStructuredTypeColumns(SQLHSTMT StatementHandle, SQLCHAR* CatalogName, SQLSMALLINT NameLength1, SQLCHAR* SchemaName, SQLSMALLINT NameLength2, SQLCHAR* TypeName, SQLSMALLINT NameLength3, SQLCHAR* ColumnName, SQLSMALLINT NameLength4);
239 	nothrow @nogc SQLRETURN SQLNextColumn(SQLHSTMT StatementHandle, SQLUSMALLINT* ColumnCount);
240 	nothrow @nogc SQLRETURN SQLAllocHandleStd(SQLSMALLINT fHandleType, SQLHANDLE hInput, SQLHANDLE* phOutput);
241 	nothrow @nogc SQLRETURN SQLColAttributeW(SQLHSTMT hstmt, SQLUSMALLINT iCol, SQLUSMALLINT iField, SQLPOINTER pCharAttr, SQLSMALLINT cbDescMax, SQLSMALLINT* pcbCharAttr, SQLPOINTER pNumAttr);
242 	nothrow @nogc SQLRETURN SQLColAttributesW(SQLHSTMT hstmt, SQLUSMALLINT icol, SQLUSMALLINT fDescType, SQLPOINTER rgbDesc, SQLSMALLINT cbDescMax, SQLSMALLINT* pcbDesc, SQLINTEGER* pfDesc);
243 	nothrow @nogc SQLRETURN SQLConnectW(SQLHDBC hdbc, SQLWCHAR* szDSN, SQLSMALLINT cchDSN, SQLWCHAR* szUID, SQLSMALLINT cchUID, SQLWCHAR* szAuthStr, SQLSMALLINT cchAuthStr);
244 	nothrow @nogc SQLRETURN SQLDescribeColW(SQLHSTMT hstmt, SQLUSMALLINT icol, SQLWCHAR* szColName, SQLSMALLINT cchColNameMax, SQLSMALLINT* pcchColName, SQLSMALLINT* pfSqlType, SQLUINTEGER* pcbColDef, SQLSMALLINT* pibScale, SQLSMALLINT* pfNullable);
245 	nothrow @nogc SQLRETURN SQLErrorW(SQLHENV henv, SQLHDBC hdbc, SQLHSTMT hstmt, SQLWCHAR* wszSqlState, SQLINTEGER* pfNativeError, SQLWCHAR* wszErrorMsg, SQLSMALLINT cchErrorMsgMax, SQLSMALLINT* pcchErrorMsg);
246 	nothrow @nogc SQLRETURN SQLExecDirectW(SQLHSTMT hstmt, SQLWCHAR* szSqlStr, SQLINTEGER TextLength);
247 	nothrow @nogc SQLRETURN SQLGetConnectAttrW(SQLHDBC hdbc, SQLINTEGER fAttribute, SQLPOINTER rgbValue, SQLINTEGER cbValueMax, SQLINTEGER* pcbValue);
248 	nothrow @nogc SQLRETURN SQLGetCursorNameW(SQLHSTMT hstmt, SQLWCHAR* szCursor, SQLSMALLINT cchCursorMax, SQLSMALLINT* pcchCursor);
249 	nothrow @nogc SQLRETURN SQLSetDescFieldW(SQLHDESC DescriptorHandle, SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier, SQLPOINTER Value, SQLINTEGER BufferLength);
250 	nothrow @nogc SQLRETURN SQLGetDescFieldW(SQLHDESC hdesc, SQLSMALLINT iRecord, SQLSMALLINT iField, SQLPOINTER rgbValue, SQLINTEGER cbBufferLength, SQLINTEGER* StringLength);
251 	nothrow @nogc SQLRETURN SQLGetDescRecW(SQLHDESC hdesc, SQLSMALLINT iRecord, SQLWCHAR* szName, SQLSMALLINT cchNameMax, SQLSMALLINT* pcchName, SQLSMALLINT* pfType, SQLSMALLINT* pfSubType, SQLINTEGER* pLength, SQLSMALLINT* pPrecision, SQLSMALLINT* pScale, SQLSMALLINT* pNullable);
252 	nothrow @nogc SQLRETURN SQLGetDiagFieldW(SQLSMALLINT fHandleType, SQLHANDLE handle, SQLSMALLINT iRecord, SQLSMALLINT fDiagField, SQLPOINTER rgbDiagInfo, SQLSMALLINT cbBufferLength, SQLSMALLINT* pcbStringLength);
253 	nothrow @nogc SQLRETURN SQLGetDiagRecW(SQLSMALLINT fHandleType, SQLHANDLE handle, SQLSMALLINT iRecord, SQLWCHAR* szSqlState, SQLINTEGER* pfNativeError, SQLWCHAR* szErrorMsg, SQLSMALLINT cchErrorMsgMax, SQLSMALLINT* pcchErrorMsg);
254 	nothrow @nogc SQLRETURN SQLPrepareW(SQLHSTMT hstmt, SQLWCHAR* szSqlStr, SQLINTEGER cchSqlStr);
255 	nothrow @nogc SQLRETURN SQLSetConnectAttrW(SQLHDBC hdbc, SQLINTEGER fAttribute, SQLPOINTER rgbValue, SQLINTEGER cbValue);
256 	nothrow @nogc SQLRETURN SQLSetCursorNameW(SQLHSTMT hstmt, SQLWCHAR* szCursor, SQLSMALLINT cchCursor);
257 	nothrow @nogc SQLRETURN SQLColumnsW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szTableName, SQLSMALLINT cchTableName, SQLWCHAR* szColumnName, SQLSMALLINT cchColumnName);
258 	nothrow @nogc SQLRETURN SQLGetConnectOptionW(SQLHDBC hdbc, SQLUSMALLINT fOption, SQLPOINTER pvParam);
259 	nothrow @nogc SQLRETURN SQLGetInfoW(SQLHDBC hdbc, SQLUSMALLINT fInfoType, SQLPOINTER rgbInfoValue, SQLSMALLINT cbInfoValueMax, SQLSMALLINT* pcbInfoValue);
260 	nothrow @nogc SQLRETURN SQLGetTypeInfoW(SQLHSTMT StatementHandle, SQLSMALLINT DataType);
261 	nothrow @nogc SQLRETURN SQLSetConnectOptionW(SQLHDBC hdbc, SQLUSMALLINT fOption, SQLUINTEGER vParam);
262 	nothrow @nogc SQLRETURN SQLSpecialColumnsW(SQLHSTMT hstmt, SQLUSMALLINT fColType, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szTableName, SQLSMALLINT cchTableName, SQLUSMALLINT fScope, SQLUSMALLINT fNullable);
263 	nothrow @nogc SQLRETURN SQLStatisticsW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szTableName, SQLSMALLINT cchTableName, SQLUSMALLINT fUnique, SQLUSMALLINT fAccuracy);
264 	nothrow @nogc SQLRETURN SQLTablesW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szTableName, SQLSMALLINT cchTableName, SQLWCHAR* szTableType, SQLSMALLINT cchTableType);
265 	nothrow @nogc SQLRETURN SQLDataSourcesW(SQLHENV henv, SQLUSMALLINT fDirection, SQLWCHAR* szDSN, SQLSMALLINT cchDSNMax, SQLSMALLINT* pcchDSN, SQLWCHAR* wszDescription, SQLSMALLINT cchDescriptionMax, SQLSMALLINT* pcchDescription);
266 	nothrow @nogc SQLRETURN SQLDriverConnectW(SQLHDBC hdbc, SQLHWND hwnd, SQLWCHAR* szConnStrIn, SQLSMALLINT cchConnStrIn, SQLWCHAR* szConnStrOut, SQLSMALLINT cchConnStrOutMax, SQLSMALLINT* pcchConnStrOut, SQLUSMALLINT fDriverCompletion);
267 	nothrow @nogc SQLRETURN SQLBrowseConnectW(SQLHDBC hdbc, SQLWCHAR* szConnStrIn, SQLSMALLINT cchConnStrIn, SQLWCHAR* szConnStrOut, SQLSMALLINT cchConnStrOutMax, SQLSMALLINT* pcchConnStrOut);
268 	nothrow @nogc SQLRETURN SQLColumnPrivilegesW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szTableName, SQLSMALLINT cchTableName, SQLWCHAR* szColumnName, SQLSMALLINT cchColumnName);
269 	nothrow @nogc SQLRETURN SQLGetStmtAttrW(SQLHSTMT hstmt, SQLINTEGER fAttribute, SQLPOINTER rgbValue, SQLINTEGER cbValueMax, SQLINTEGER* pcbValue);
270 	nothrow @nogc SQLRETURN SQLSetStmtAttrW(SQLHSTMT hstmt, SQLINTEGER fAttribute, SQLPOINTER rgbValue, SQLINTEGER cbValueMax);
271 	nothrow @nogc SQLRETURN SQLForeignKeysW(SQLHSTMT hstmt, SQLWCHAR* szPkCatalogName, SQLSMALLINT cchPkCatalogName, SQLWCHAR* szPkSchemaName, SQLSMALLINT cchPkSchemaName, SQLWCHAR* szPkTableName, SQLSMALLINT cchPkTableName, SQLWCHAR* szFkCatalogName, SQLSMALLINT cchFkCatalogName, SQLWCHAR* szFkSchemaName, SQLSMALLINT cchFkSchemaName, SQLWCHAR* szFkTableName, SQLSMALLINT cchFkTableName);
272 	nothrow @nogc SQLRETURN SQLNativeSqlW(SQLHDBC hdbc, SQLWCHAR* szSqlStrIn, SQLINTEGER cchSqlStrIn, SQLWCHAR* szSqlStr, SQLINTEGER cchSqlStrMax, SQLINTEGER* pcchSqlStr);
273 	nothrow @nogc SQLRETURN SQLPrimaryKeysW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szTableName, SQLSMALLINT cchTableName);
274 	nothrow @nogc SQLRETURN SQLProcedureColumnsW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szProcName, SQLSMALLINT cchProcName, SQLWCHAR* szColumnName, SQLSMALLINT cchColumnName);
275 	nothrow @nogc SQLRETURN SQLProceduresW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szProcName, SQLSMALLINT cchProcName);
276 	nothrow @nogc SQLRETURN SQLTablePrivilegesW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szTableName, SQLSMALLINT cchTableName);
277 	nothrow @nogc SQLRETURN SQLDriversW(SQLHENV henv, SQLUSMALLINT fDirection, SQLWCHAR* szDriverDesc, SQLSMALLINT cchDriverDescMax, SQLSMALLINT* pcchDriverDesc, SQLWCHAR* szDriverAttributes, SQLSMALLINT cchDrvrAttrMax, SQLSMALLINT* pcchDrvrAttr);
278 	nothrow @nogc SQLRETURN SQLStructuredTypesW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szTypeName, SQLSMALLINT cchTypeName);
279 	nothrow @nogc SQLRETURN SQLStructuredTypeColumnsW(SQLHSTMT hstmt, SQLWCHAR* szCatalogName, SQLSMALLINT cchCatalogName, SQLWCHAR* szSchemaName, SQLSMALLINT cchSchemaName, SQLWCHAR* szTypeName, SQLSMALLINT cchTypeName, SQLWCHAR* szColumnName, SQLSMALLINT cchColumnName);
280 	nothrow @nogc SQLRETURN SQLColAttributeA(SQLHSTMT hstmt, SQLSMALLINT iCol, SQLSMALLINT iField, SQLPOINTER pCharAttr, SQLSMALLINT cbCharAttrMax, SQLSMALLINT* pcbCharAttr, SQLPOINTER pNumAttr);
281 	nothrow @nogc SQLRETURN SQLColAttributesA(SQLHSTMT hstmt, SQLUSMALLINT icol, SQLUSMALLINT fDescType, SQLPOINTER rgbDesc, SQLSMALLINT cbDescMax, SQLSMALLINT* pcbDesc, SQLINTEGER* pfDesc);
282 	nothrow @nogc SQLRETURN SQLConnectA(SQLHDBC hdbc, SQLCHAR* szDSN, SQLSMALLINT cbDSN, SQLCHAR* szUID, SQLSMALLINT cbUID, SQLCHAR* szAuthStr, SQLSMALLINT cbAuthStr);
283 	nothrow @nogc SQLRETURN SQLDescribeColA(SQLHSTMT hstmt, SQLUSMALLINT icol, SQLCHAR* szColName, SQLSMALLINT cbColNameMax, SQLSMALLINT* pcbColName, SQLSMALLINT* pfSqlType, SQLUINTEGER* pcbColDef, SQLSMALLINT* pibScale, SQLSMALLINT* pfNullable);
284 	nothrow @nogc SQLRETURN SQLErrorA(SQLHENV henv, SQLHDBC hdbc, SQLHSTMT hstmt, SQLCHAR* szSqlState, SQLINTEGER* pfNativeError, SQLCHAR* szErrorMsg, SQLSMALLINT cbErrorMsgMax, SQLSMALLINT* pcbErrorMsg);
285 	nothrow @nogc SQLRETURN SQLExecDirectA(SQLHSTMT hstmt, SQLCHAR* szSqlStr, SQLINTEGER cbSqlStr);
286 	nothrow @nogc SQLRETURN SQLGetConnectAttrA(SQLHDBC hdbc, SQLINTEGER fAttribute, SQLPOINTER rgbValue, SQLINTEGER cbValueMax, SQLINTEGER* pcbValue);
287 	nothrow @nogc SQLRETURN SQLGetCursorNameA(SQLHSTMT hstmt, SQLCHAR* szCursor, SQLSMALLINT cbCursorMax, SQLSMALLINT* pcbCursor);
288 	nothrow @nogc SQLRETURN SQLGetDescFieldA(SQLHDESC hdesc, SQLSMALLINT iRecord, SQLSMALLINT iField, SQLPOINTER rgbValue, SQLINTEGER cbBufferLength, SQLINTEGER* StringLength);
289 	nothrow @nogc SQLRETURN SQLGetDescRecA(SQLHDESC hdesc, SQLSMALLINT iRecord, SQLCHAR* szName, SQLSMALLINT cbNameMax, SQLSMALLINT* pcbName, SQLSMALLINT* pfType, SQLSMALLINT* pfSubType, SQLINTEGER* pLength, SQLSMALLINT* pPrecision, SQLSMALLINT* pScale, SQLSMALLINT* pNullable);
290 	nothrow @nogc SQLRETURN SQLGetDiagFieldA(SQLSMALLINT fHandleType, SQLHANDLE handle, SQLSMALLINT iRecord, SQLSMALLINT fDiagField, SQLPOINTER rgbDiagInfo, SQLSMALLINT cbDiagInfoMax, SQLSMALLINT* pcbDiagInfo);
291 	nothrow @nogc SQLRETURN SQLGetDiagRecA(SQLSMALLINT fHandleType, SQLHANDLE handle, SQLSMALLINT iRecord, SQLCHAR* szSqlState, SQLINTEGER* pfNativeError, SQLCHAR* szErrorMsg, SQLSMALLINT cbErrorMsgMax, SQLSMALLINT* pcbErrorMsg);
292 	nothrow @nogc SQLRETURN SQLGetStmtAttrA(SQLHSTMT hstmt, SQLINTEGER fAttribute, SQLPOINTER rgbValue, SQLINTEGER cbValueMax, SQLINTEGER* pcbValue);
293 	nothrow @nogc SQLRETURN SQLGetTypeInfoA(SQLHSTMT StatementHandle, SQLSMALLINT DataType);
294 	nothrow @nogc SQLRETURN SQLPrepareA(SQLHSTMT hstmt, SQLCHAR* szSqlStr, SQLINTEGER cbSqlStr);
295 	nothrow @nogc SQLRETURN SQLSetConnectAttrA(SQLHDBC hdbc, SQLINTEGER fAttribute, SQLPOINTER rgbValue, SQLINTEGER cbValue);
296 	nothrow @nogc SQLRETURN SQLSetCursorNameA(SQLHSTMT hstmt, SQLCHAR* szCursor, SQLSMALLINT cbCursor);
297 	nothrow @nogc SQLRETURN SQLColumnsA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szTableName, SQLSMALLINT cbTableName, SQLCHAR* szColumnName, SQLSMALLINT cbColumnName);
298 	nothrow @nogc SQLRETURN SQLGetConnectOptionA(SQLHDBC hdbc, SQLUSMALLINT fOption, SQLPOINTER pvParam);
299 	nothrow @nogc SQLRETURN SQLGetInfoA(SQLHDBC hdbc, SQLUSMALLINT fInfoType, SQLPOINTER rgbInfoValue, SQLSMALLINT cbInfoValueMax, SQLSMALLINT* pcbInfoValue);
300 	nothrow @nogc SQLRETURN SQLGetStmtOptionA(SQLHSTMT hstmt, SQLUSMALLINT fOption, SQLPOINTER pvParam);
301 	nothrow @nogc SQLRETURN SQLSetConnectOptionA(SQLHDBC hdbc, SQLUSMALLINT fOption, SQLUINTEGER vParam);
302 	nothrow @nogc SQLRETURN SQLSetStmtOptionA(SQLHSTMT hstmt, SQLUSMALLINT fOption, SQLUINTEGER vParam);
303 	nothrow @nogc SQLRETURN SQLSpecialColumnsA(SQLHSTMT hstmt, SQLUSMALLINT fColType, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szTableName, SQLSMALLINT cbTableName, SQLUSMALLINT fScope, SQLUSMALLINT fNullable);
304 	nothrow @nogc SQLRETURN SQLStatisticsA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szTableName, SQLSMALLINT cbTableName, SQLUSMALLINT fUnique, SQLUSMALLINT fAccuracy);
305 	nothrow @nogc SQLRETURN SQLTablesA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szTableName, SQLSMALLINT cbTableName, SQLCHAR* szTableType, SQLSMALLINT cbTableType);
306 	nothrow @nogc SQLRETURN SQLDataSourcesA(SQLHENV henv, SQLUSMALLINT fDirection, SQLCHAR* szDSN, SQLSMALLINT cbDSNMax, SQLSMALLINT* pcbDSN, SQLCHAR* szDescription, SQLSMALLINT cbDescriptionMax, SQLSMALLINT* pcbDescription);
307 	nothrow @nogc SQLRETURN SQLDriverConnectA(SQLHDBC hdbc, SQLHWND hwnd, SQLCHAR* szConnStrIn, SQLSMALLINT cbConnStrIn, SQLCHAR* szConnStrOut, SQLSMALLINT cbConnStrOutMax, SQLSMALLINT* pcbConnStrOut, SQLUSMALLINT fDriverCompletion);
308 	nothrow @nogc SQLRETURN SQLBrowseConnectA(SQLHDBC hdbc, SQLCHAR* szConnStrIn, SQLSMALLINT cbConnStrIn, SQLCHAR* szConnStrOut, SQLSMALLINT cbConnStrOutMax, SQLSMALLINT* pcbConnStrOut);
309 	nothrow @nogc SQLRETURN SQLColumnPrivilegesA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szTableName, SQLSMALLINT cbTableName, SQLCHAR* szColumnName, SQLSMALLINT cbColumnName);
310 	nothrow @nogc SQLRETURN SQLDescribeParamA(SQLHSTMT hstmt, SQLUSMALLINT ipar, SQLSMALLINT* pfSqlType, SQLUINTEGER* pcbParamDef, SQLSMALLINT* pibScale, SQLSMALLINT* pfNullable);
311 	nothrow @nogc SQLRETURN SQLForeignKeysA(SQLHSTMT hstmt, SQLCHAR* szPkCatalogName, SQLSMALLINT cbPkCatalogName, SQLCHAR* szPkSchemaName, SQLSMALLINT cbPkSchemaName, SQLCHAR* szPkTableName, SQLSMALLINT cbPkTableName, SQLCHAR* szFkCatalogName, SQLSMALLINT cbFkCatalogName, SQLCHAR* szFkSchemaName, SQLSMALLINT cbFkSchemaName, SQLCHAR* szFkTableName, SQLSMALLINT cbFkTableName);
312 	nothrow @nogc SQLRETURN SQLNativeSqlA(SQLHDBC hdbc, SQLCHAR* szSqlStrIn, SQLINTEGER cbSqlStrIn, SQLCHAR* szSqlStr, SQLINTEGER cbSqlStrMax, SQLINTEGER* pcbSqlStr);
313 	nothrow @nogc SQLRETURN SQLPrimaryKeysA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szTableName, SQLSMALLINT cbTableName);
314 	nothrow @nogc SQLRETURN SQLProcedureColumnsA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szProcName, SQLSMALLINT cbProcName, SQLCHAR* szColumnName, SQLSMALLINT cbColumnName);
315 	nothrow @nogc SQLRETURN SQLProceduresA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szProcName, SQLSMALLINT cbProcName);
316 	nothrow @nogc SQLRETURN SQLTablePrivilegesA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szTableName, SQLSMALLINT cbTableName);
317 	nothrow @nogc SQLRETURN SQLDriversA(SQLHENV henv, SQLUSMALLINT fDirection, SQLCHAR* szDriverDesc, SQLSMALLINT cbDriverDescMax, SQLSMALLINT* pcbDriverDesc, SQLCHAR* szDriverAttributes, SQLSMALLINT cbDrvrAttrMax, SQLSMALLINT* pcbDrvrAttr);
318 	nothrow @nogc SQLRETURN SQLStructuredTypesA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szTypeName, SQLSMALLINT cbTypeName);
319 	nothrow @nogc SQLRETURN SQLStructuredTypeColumnsA(SQLHSTMT hstmt, SQLCHAR* szCatalogName, SQLSMALLINT cbCatalogName, SQLCHAR* szSchemaName, SQLSMALLINT cbSchemaName, SQLCHAR* szTypeName, SQLSMALLINT cbTypeName, SQLCHAR* szColumnName, SQLSMALLINT cbColumnName);
320 	enum SQLINTEGER ODBCVER = 1024;
321 	enum SQLINTEGER SQL_MAX_NUMERIC_LEN = 16;
322 	auto SQL_NULL_DATA()()
323 	{
324 		return -1;
325 	}
326 	auto SQL_DATA_AT_EXEC()()
327 	{
328 		return -2;
329 	}
330 	enum SQLINTEGER SQL_SUCCESS = 0;
331 	enum SQLINTEGER SQL_SUCCESS_WITH_INFO = 1;
332 	enum SQLINTEGER SQL_NO_DATA = 100;
333 	enum SQLINTEGER SQL_PARAM_DATA_AVAILABLE = 101;
334 	auto SQL_ERROR()()
335 	{
336 		return -1;
337 	}
338 	auto SQL_INVALID_HANDLE()()
339 	{
340 		return -2;
341 	}
342 	enum SQLINTEGER SQL_STILL_EXECUTING = 2;
343 	enum SQLINTEGER SQL_NEED_DATA = 99;
344 	auto SQL_SUCCEEDED(__MP1)(__MP1 rc)
345 	{
346 		return (rc & ~1) == 0;
347 	}
348 	auto SQL_NTS()()
349 	{
350 		return -3;
351 	}
352 	auto SQL_NTSL()()
353 	{
354 		return -3;
355 	}
356 	enum SQLINTEGER SQL_MAX_MESSAGE_LENGTH = 512;
357 	enum SQLINTEGER SQL_DATE_LEN = 10;
358 	enum SQLINTEGER SQL_TIME_LEN = 8;
359 	enum SQLINTEGER SQL_TIMESTAMP_LEN = 19;
360 	enum SQLINTEGER SQL_HANDLE_ENV = 1;
361 	enum SQLINTEGER SQL_HANDLE_DBC = 2;
362 	enum SQLINTEGER SQL_HANDLE_STMT = 3;
363 	enum SQLINTEGER SQL_HANDLE_DESC = 4;
364 	enum SQLINTEGER SQL_ATTR_OUTPUT_NTS = 10001;
365 	enum SQLINTEGER SQL_ATTR_AUTO_IPD = 10001;
366 	enum SQLINTEGER SQL_ATTR_METADATA_ID = 10014;
367 	enum SQLINTEGER SQL_ATTR_APP_ROW_DESC = 10010;
368 	enum SQLINTEGER SQL_ATTR_APP_PARAM_DESC = 10011;
369 	enum SQLINTEGER SQL_ATTR_IMP_ROW_DESC = 10012;
370 	enum SQLINTEGER SQL_ATTR_IMP_PARAM_DESC = 10013;
371 	auto SQL_ATTR_CURSOR_SCROLLABLE()()
372 	{
373 		return -1;
374 	}
375 	auto SQL_ATTR_CURSOR_SENSITIVITY()()
376 	{
377 		return -2;
378 	}
379 	enum SQLINTEGER SQL_NONSCROLLABLE = 0;
380 	enum SQLINTEGER SQL_SCROLLABLE = 1;
381 	enum SQLINTEGER SQL_DESC_COUNT = 1001;
382 	enum SQLINTEGER SQL_DESC_TYPE = 1002;
383 	enum SQLINTEGER SQL_DESC_LENGTH = 1003;
384 	enum SQLINTEGER SQL_DESC_OCTET_LENGTH_PTR = 1004;
385 	enum SQLINTEGER SQL_DESC_PRECISION = 1005;
386 	enum SQLINTEGER SQL_DESC_SCALE = 1006;
387 	enum SQLINTEGER SQL_DESC_DATETIME_INTERVAL_CODE = 1007;
388 	enum SQLINTEGER SQL_DESC_NULLABLE = 1008;
389 	enum SQLINTEGER SQL_DESC_INDICATOR_PTR = 1009;
390 	enum SQLINTEGER SQL_DESC_DATA_PTR = 1010;
391 	enum SQLINTEGER SQL_DESC_NAME = 1011;
392 	enum SQLINTEGER SQL_DESC_UNNAMED = 1012;
393 	enum SQLINTEGER SQL_DESC_OCTET_LENGTH = 1013;
394 	enum SQLINTEGER SQL_DESC_ALLOC_TYPE = 1099;
395 	enum SQLINTEGER SQL_DESC_CHARACTER_SET_CATALOG = 1018;
396 	enum SQLINTEGER SQL_DESC_CHARACTER_SET_SCHEMA = 1019;
397 	enum SQLINTEGER SQL_DESC_CHARACTER_SET_NAME = 1020;
398 	enum SQLINTEGER SQL_DESC_COLLATION_CATALOG = 1015;
399 	enum SQLINTEGER SQL_DESC_COLLATION_SCHEMA = 1016;
400 	enum SQLINTEGER SQL_DESC_COLLATION_NAME = 1017;
401 	enum SQLINTEGER SQL_DESC_USER_DEFINED_TYPE_CATALOG = 1026;
402 	enum SQLINTEGER SQL_DESC_USER_DEFINED_TYPE_SCHEMA = 1027;
403 	enum SQLINTEGER SQL_DESC_USER_DEFINED_TYPE_NAME = 1028;
404 	enum SQLINTEGER SQL_DIAG_RETURNCODE = 1;
405 	enum SQLINTEGER SQL_DIAG_NUMBER = 2;
406 	enum SQLINTEGER SQL_DIAG_ROW_COUNT = 3;
407 	enum SQLINTEGER SQL_DIAG_SQLSTATE = 4;
408 	enum SQLINTEGER SQL_DIAG_NATIVE = 5;
409 	enum SQLINTEGER SQL_DIAG_MESSAGE_TEXT = 6;
410 	enum SQLINTEGER SQL_DIAG_DYNAMIC_FUNCTION = 7;
411 	enum SQLINTEGER SQL_DIAG_CLASS_ORIGIN = 8;
412 	enum SQLINTEGER SQL_DIAG_SUBCLASS_ORIGIN = 9;
413 	enum SQLINTEGER SQL_DIAG_CONNECTION_NAME = 10;
414 	enum SQLINTEGER SQL_DIAG_SERVER_NAME = 11;
415 	enum SQLINTEGER SQL_DIAG_DYNAMIC_FUNCTION_CODE = 12;
416 	enum SQLINTEGER SQL_DIAG_ALTER_DOMAIN = 3;
417 	enum SQLINTEGER SQL_DIAG_ALTER_TABLE = 4;
418 	enum SQLINTEGER SQL_DIAG_CALL = 7;
419 	enum SQLINTEGER SQL_DIAG_CREATE_ASSERTION = 6;
420 	enum SQLINTEGER SQL_DIAG_CREATE_CHARACTER_SET = 8;
421 	enum SQLINTEGER SQL_DIAG_CREATE_COLLATION = 10;
422 	enum SQLINTEGER SQL_DIAG_CREATE_DOMAIN = 23;
423 	auto SQL_DIAG_CREATE_INDEX()()
424 	{
425 		return -1;
426 	}
427 	enum SQLINTEGER SQL_DIAG_CREATE_SCHEMA = 64;
428 	enum SQLINTEGER SQL_DIAG_CREATE_TABLE = 77;
429 	enum SQLINTEGER SQL_DIAG_CREATE_TRANSLATION = 79;
430 	enum SQLINTEGER SQL_DIAG_CREATE_VIEW = 84;
431 	enum SQLINTEGER SQL_DIAG_DELETE_WHERE = 19;
432 	enum SQLINTEGER SQL_DIAG_DROP_ASSERTION = 24;
433 	enum SQLINTEGER SQL_DIAG_DROP_CHARACTER_SET = 25;
434 	enum SQLINTEGER SQL_DIAG_DROP_COLLATION = 26;
435 	enum SQLINTEGER SQL_DIAG_DROP_DOMAIN = 27;
436 	auto SQL_DIAG_DROP_INDEX()()
437 	{
438 		return -2;
439 	}
440 	enum SQLINTEGER SQL_DIAG_DROP_SCHEMA = 31;
441 	enum SQLINTEGER SQL_DIAG_DROP_TABLE = 32;
442 	enum SQLINTEGER SQL_DIAG_DROP_TRANSLATION = 33;
443 	enum SQLINTEGER SQL_DIAG_DROP_VIEW = 36;
444 	enum SQLINTEGER SQL_DIAG_DYNAMIC_DELETE_CURSOR = 38;
445 	enum SQLINTEGER SQL_DIAG_DYNAMIC_UPDATE_CURSOR = 81;
446 	enum SQLINTEGER SQL_DIAG_GRANT = 48;
447 	enum SQLINTEGER SQL_DIAG_INSERT = 50;
448 	enum SQLINTEGER SQL_DIAG_REVOKE = 59;
449 	enum SQLINTEGER SQL_DIAG_SELECT_CURSOR = 85;
450 	enum SQLINTEGER SQL_DIAG_UNKNOWN_STATEMENT = 0;
451 	enum SQLINTEGER SQL_DIAG_UPDATE_WHERE = 82;
452 	enum SQLINTEGER SQL_UNKNOWN_TYPE = 0;
453 	enum SQLINTEGER SQL_CHAR = 1;
454 	enum SQLINTEGER SQL_NUMERIC = 2;
455 	enum SQLINTEGER SQL_DECIMAL = 3;
456 	enum SQLINTEGER SQL_INTEGER = 4;
457 	enum SQLINTEGER SQL_SMALLINT = 5;
458 	enum SQLINTEGER SQL_FLOAT = 6;
459 	enum SQLINTEGER SQL_REAL = 7;
460 	enum SQLINTEGER SQL_DOUBLE = 8;
461 	enum SQLINTEGER SQL_DATETIME = 9;
462 	enum SQLINTEGER SQL_VARCHAR = 12;
463 	enum SQLINTEGER SQL_UDT = 17;
464 	enum SQLINTEGER SQL_ROW = 19;
465 	enum SQLINTEGER SQL_ARRAY = 50;
466 	enum SQLINTEGER SQL_MULTISET = 55;
467 	enum SQLINTEGER SQL_TYPE_DATE = 91;
468 	enum SQLINTEGER SQL_TYPE_TIME = 92;
469 	enum SQLINTEGER SQL_TYPE_TIMESTAMP = 93;
470 	enum SQLINTEGER SQL_TYPE_TIME_WITH_TIMEZONE = 94;
471 	enum SQLINTEGER SQL_TYPE_TIMESTAMP_WITH_TIMEZONE = 95;
472 	enum SQLINTEGER SQL_UNSPECIFIED = 0;
473 	enum SQLINTEGER SQL_INSENSITIVE = 1;
474 	enum SQLINTEGER SQL_SENSITIVE = 2;
475 	enum SQLINTEGER SQL_ALL_TYPES = 0;
476 	enum SQLINTEGER SQL_DEFAULT = 99;
477 	auto SQL_ARD_TYPE()()
478 	{
479 		return -99;
480 	}
481 	auto SQL_APD_TYPE()()
482 	{
483 		return -100;
484 	}
485 	enum SQLINTEGER SQL_CODE_DATE = 1;
486 	enum SQLINTEGER SQL_CODE_TIME = 2;
487 	enum SQLINTEGER SQL_CODE_TIMESTAMP = 3;
488 	enum SQLINTEGER SQL_CODE_TIME_WITH_TIMEZONE = 4;
489 	enum SQLINTEGER SQL_CODE_TIMESTAMP_WITH_TIMEZONE = 5;
490 	enum SQLINTEGER SQL_FALSE = 0;
491 	enum SQLINTEGER SQL_TRUE = 1;
492 	enum SQLINTEGER SQL_NO_NULLS = 0;
493 	enum SQLINTEGER SQL_NULLABLE = 1;
494 	enum SQLINTEGER SQL_NULLABLE_UNKNOWN = 2;
495 	enum SQLINTEGER SQL_PRED_NONE = 0;
496 	enum SQLINTEGER SQL_PRED_CHAR = 1;
497 	enum SQLINTEGER SQL_PRED_BASIC = 2;
498 	enum SQLINTEGER SQL_NAMED = 0;
499 	enum SQLINTEGER SQL_UNNAMED = 1;
500 	enum SQLINTEGER SQL_DESC_ALLOC_AUTO = 1;
501 	enum SQLINTEGER SQL_DESC_ALLOC_USER = 2;
502 	enum SQLINTEGER SQL_CLOSE = 0;
503 	enum SQLINTEGER SQL_DROP = 1;
504 	enum SQLINTEGER SQL_UNBIND = 2;
505 	enum SQLINTEGER SQL_RESET_PARAMS = 3;
506 	enum SQLINTEGER SQL_FETCH_NEXT = 1;
507 	enum SQLINTEGER SQL_FETCH_FIRST = 2;
508 	enum SQLINTEGER SQL_FETCH_LAST = 3;
509 	enum SQLINTEGER SQL_FETCH_PRIOR = 4;
510 	enum SQLINTEGER SQL_FETCH_ABSOLUTE = 5;
511 	enum SQLINTEGER SQL_FETCH_RELATIVE = 6;
512 	enum SQLINTEGER SQL_COMMIT = 0;
513 	enum SQLINTEGER SQL_ROLLBACK = 1;
514 	enum SQLINTEGER SQL_NULL_HENV = 0;
515 	enum SQLINTEGER SQL_NULL_HDBC = 0;
516 	enum SQLINTEGER SQL_NULL_HSTMT = 0;
517 	enum SQLINTEGER SQL_NULL_HDESC = 0;
518 	enum SQLINTEGER SQL_NULL_HANDLE = 0;
519 	enum SQLINTEGER SQL_SCOPE_CURROW = 0;
520 	enum SQLINTEGER SQL_SCOPE_TRANSACTION = 1;
521 	enum SQLINTEGER SQL_SCOPE_SESSION = 2;
522 	enum SQLINTEGER SQL_PC_UNKNOWN = 0;
523 	enum SQLINTEGER SQL_PC_NON_PSEUDO = 1;
524 	enum SQLINTEGER SQL_PC_PSEUDO = 2;
525 	enum SQLINTEGER SQL_ROW_IDENTIFIER = 1;
526 	enum SQLINTEGER SQL_INDEX_UNIQUE = 0;
527 	enum SQLINTEGER SQL_INDEX_ALL = 1;
528 	enum SQLINTEGER SQL_INDEX_CLUSTERED = 1;
529 	enum SQLINTEGER SQL_INDEX_HASHED = 2;
530 	enum SQLINTEGER SQL_INDEX_OTHER = 3;
531 	enum SQLINTEGER SQL_MAX_DRIVER_CONNECTIONS = 0;
532 	enum SQLINTEGER SQL_MAX_CONCURRENT_ACTIVITIES = 1;
533 	enum SQLINTEGER SQL_DATA_SOURCE_NAME = 2;
534 	enum SQLINTEGER SQL_FETCH_DIRECTION = 8;
535 	enum SQLINTEGER SQL_SERVER_NAME = 13;
536 	enum SQLINTEGER SQL_SEARCH_PATTERN_ESCAPE = 14;
537 	enum SQLINTEGER SQL_DBMS_NAME = 17;
538 	enum SQLINTEGER SQL_DBMS_VER = 18;
539 	enum SQLINTEGER SQL_ACCESSIBLE_TABLES = 19;
540 	enum SQLINTEGER SQL_ACCESSIBLE_PROCEDURES = 20;
541 	enum SQLINTEGER SQL_CURSOR_COMMIT_BEHAVIOR = 23;
542 	enum SQLINTEGER SQL_DATA_SOURCE_READ_ONLY = 25;
543 	enum SQLINTEGER SQL_DEFAULT_TXN_ISOLATION = 26;
544 	enum SQLINTEGER SQL_IDENTIFIER_CASE = 28;
545 	enum SQLINTEGER SQL_IDENTIFIER_QUOTE_CHAR = 29;
546 	enum SQLINTEGER SQL_MAX_COLUMN_NAME_LEN = 30;
547 	enum SQLINTEGER SQL_MAX_CURSOR_NAME_LEN = 31;
548 	enum SQLINTEGER SQL_MAX_SCHEMA_NAME_LEN = 32;
549 	enum SQLINTEGER SQL_MAX_CATALOG_NAME_LEN = 34;
550 	enum SQLINTEGER SQL_MAX_TABLE_NAME_LEN = 35;
551 	enum SQLINTEGER SQL_SCROLL_CONCURRENCY = 43;
552 	enum SQLINTEGER SQL_TXN_CAPABLE = 46;
553 	enum SQLINTEGER SQL_USER_NAME = 47;
554 	enum SQLINTEGER SQL_TXN_ISOLATION_OPTION = 72;
555 	enum SQLINTEGER SQL_INTEGRITY = 73;
556 	enum SQLINTEGER SQL_GETDATA_EXTENSIONS = 81;
557 	enum SQLINTEGER SQL_NULL_COLLATION = 85;
558 	enum SQLINTEGER SQL_ALTER_TABLE = 86;
559 	enum SQLINTEGER SQL_ORDER_BY_COLUMNS_IN_SELECT = 90;
560 	enum SQLINTEGER SQL_SPECIAL_CHARACTERS = 94;
561 	enum SQLINTEGER SQL_MAX_COLUMNS_IN_GROUP_BY = 97;
562 	enum SQLINTEGER SQL_MAX_COLUMNS_IN_INDEX = 98;
563 	enum SQLINTEGER SQL_MAX_COLUMNS_IN_ORDER_BY = 99;
564 	enum SQLINTEGER SQL_MAX_COLUMNS_IN_SELECT = 100;
565 	enum SQLINTEGER SQL_MAX_COLUMNS_IN_TABLE = 101;
566 	enum SQLINTEGER SQL_MAX_INDEX_SIZE = 102;
567 	enum SQLINTEGER SQL_MAX_ROW_SIZE = 104;
568 	enum SQLINTEGER SQL_MAX_STATEMENT_LEN = 105;
569 	enum SQLINTEGER SQL_MAX_TABLES_IN_SELECT = 106;
570 	enum SQLINTEGER SQL_MAX_USER_NAME_LEN = 107;
571 	enum SQLINTEGER SQL_OJ_CAPABILITIES = 115;
572 	enum SQLINTEGER SQL_XOPEN_CLI_YEAR = 10000;
573 	enum SQLINTEGER SQL_CURSOR_SENSITIVITY = 10001;
574 	enum SQLINTEGER SQL_DESCRIBE_PARAMETER = 10002;
575 	enum SQLINTEGER SQL_CATALOG_NAME = 10003;
576 	enum SQLINTEGER SQL_COLLATION_SEQ = 10004;
577 	enum SQLINTEGER SQL_MAX_IDENTIFIER_LEN = 10005;
578 	enum SQLINTEGER SQL_AT_ADD_COLUMN = 1;
579 	enum SQLINTEGER SQL_AT_DROP_COLUMN = 2;
580 	enum SQLINTEGER SQL_AT_ADD_CONSTRAINT = 8;
581 	enum SQLINTEGER SQL_AM_NONE = 0;
582 	enum SQLINTEGER SQL_AM_CONNECTION = 1;
583 	enum SQLINTEGER SQL_AM_STATEMENT = 2;
584 	enum SQLINTEGER SQL_CB_DELETE = 0;
585 	enum SQLINTEGER SQL_CB_CLOSE = 1;
586 	enum SQLINTEGER SQL_CB_PRESERVE = 2;
587 	enum SQLINTEGER SQL_FD_FETCH_NEXT = 1;
588 	enum SQLINTEGER SQL_FD_FETCH_FIRST = 2;
589 	enum SQLINTEGER SQL_FD_FETCH_LAST = 4;
590 	enum SQLINTEGER SQL_FD_FETCH_PRIOR = 8;
591 	enum SQLINTEGER SQL_FD_FETCH_ABSOLUTE = 16;
592 	enum SQLINTEGER SQL_FD_FETCH_RELATIVE = 32;
593 	enum SQLINTEGER SQL_GD_ANY_COLUMN = 1;
594 	enum SQLINTEGER SQL_GD_ANY_ORDER = 2;
595 	enum SQLINTEGER SQL_IC_UPPER = 1;
596 	enum SQLINTEGER SQL_IC_LOWER = 2;
597 	enum SQLINTEGER SQL_IC_SENSITIVE = 3;
598 	enum SQLINTEGER SQL_IC_MIXED = 4;
599 	enum SQLINTEGER SQL_OJ_LEFT = 1;
600 	enum SQLINTEGER SQL_OJ_RIGHT = 2;
601 	enum SQLINTEGER SQL_OJ_FULL = 4;
602 	enum SQLINTEGER SQL_OJ_NESTED = 8;
603 	enum SQLINTEGER SQL_OJ_NOT_ORDERED = 16;
604 	enum SQLINTEGER SQL_OJ_INNER = 32;
605 	enum SQLINTEGER SQL_OJ_ALL_COMPARISON_OPS = 64;
606 	enum SQLINTEGER SQL_SCCO_READ_ONLY = 1;
607 	enum SQLINTEGER SQL_SCCO_LOCK = 2;
608 	enum SQLINTEGER SQL_SCCO_OPT_ROWVER = 4;
609 	enum SQLINTEGER SQL_SCCO_OPT_VALUES = 8;
610 	enum SQLINTEGER SQL_TC_NONE = 0;
611 	enum SQLINTEGER SQL_TC_DML = 1;
612 	enum SQLINTEGER SQL_TC_ALL = 2;
613 	enum SQLINTEGER SQL_TC_DDL_COMMIT = 3;
614 	enum SQLINTEGER SQL_TC_DDL_IGNORE = 4;
615 	enum SQLINTEGER SQL_TXN_READ_UNCOMMITTED = 1;
616 	enum SQLINTEGER SQL_TXN_READ_COMMITTED = 2;
617 	enum SQLINTEGER SQL_TXN_REPEATABLE_READ = 4;
618 	enum SQLINTEGER SQL_TXN_SERIALIZABLE = 8;
619 	enum SQLINTEGER SQL_NC_HIGH = 0;
620 	enum SQLINTEGER SQL_NC_LOW = 1;
621 	enum SQLINTEGER SQL_SPEC_MAJOR = 4;
622 	enum SQLINTEGER SQL_SPEC_MINOR = 0;
623 	enum SQL_SPEC_STRING = "04.00";
624 	enum SQLINTEGER SQL_SQLSTATE_SIZE = 5;
625 	enum SQLINTEGER SQL_MAX_DSN_LENGTH = 32;
626 	enum SQLINTEGER SQL_MAX_OPTION_STRING_LENGTH = 256;
627 	enum SQLINTEGER SQL_DATA_AVAILABLE = 102;
628 	enum SQLINTEGER SQL_METADATA_CHANGED = 103;
629 	enum SQLINTEGER SQL_MORE_DATA = 104;
630 	enum SQLINTEGER SQL_HANDLE_SENV = 5;
631 	enum SQLINTEGER SQL_ATTR_ODBC_VERSION = 200;
632 	enum SQLINTEGER SQL_ATTR_CONNECTION_POOLING = 201;
633 	enum SQLINTEGER SQL_ATTR_CP_MATCH = 202;
634 	enum SQLINTEGER SQL_ATTR_APPLICATION_KEY = 203;
635 	enum SQLUINTEGER SQL_CP_OFF = 0u;
636 	enum SQLUINTEGER SQL_CP_ONE_PER_DRIVER = 1u;
637 	enum SQLUINTEGER SQL_CP_ONE_PER_HENV = 2u;
638 	enum SQLUINTEGER SQL_CP_DRIVER_AWARE = 3u;
639 	enum SQLUINTEGER SQL_CP_STRICT_MATCH = 0u;
640 	enum SQLUINTEGER SQL_CP_RELAXED_MATCH = 1u;
641 	enum SQLUINTEGER SQL_OV_ODBC2 = 2u;
642 	enum SQLUINTEGER SQL_OV_ODBC3 = 3u;
643 	enum SQLUINTEGER SQL_OV_ODBC3_80 = 380u;
644 	enum SQLUINTEGER SQL_OV_ODBC4 = 400u;
645 	enum SQLINTEGER SQL_ACCESS_MODE = 101;
646 	enum SQLINTEGER SQL_AUTOCOMMIT = 102;
647 	enum SQLINTEGER SQL_LOGIN_TIMEOUT = 103;
648 	enum SQLINTEGER SQL_OPT_TRACE = 104;
649 	enum SQLINTEGER SQL_OPT_TRACEFILE = 105;
650 	enum SQLINTEGER SQL_TRANSLATE_DLL = 106;
651 	enum SQLINTEGER SQL_TRANSLATE_OPTION = 107;
652 	enum SQLINTEGER SQL_TXN_ISOLATION = 108;
653 	enum SQLINTEGER SQL_CURRENT_QUALIFIER = 109;
654 	enum SQLINTEGER SQL_ODBC_CURSORS = 110;
655 	enum SQLINTEGER SQL_QUIET_MODE = 111;
656 	enum SQLINTEGER SQL_PACKET_SIZE = 112;
657 	enum SQLINTEGER SQL_ATTR_CONNECTION_TIMEOUT = 113;
658 	enum SQLINTEGER SQL_ATTR_DISCONNECT_BEHAVIOR = 114;
659 	enum SQLINTEGER SQL_ATTR_ENLIST_IN_DTC = 1207;
660 	enum SQLINTEGER SQL_ATTR_ENLIST_IN_XA = 1208;
661 	enum SQLINTEGER SQL_ATTR_CONNECTION_DEAD = 1209;
662 	enum SQLINTEGER SQL_ATTR_ANSI_APP = 115;
663 	enum SQLINTEGER SQL_ATTR_RESET_CONNECTION = 116;
664 	enum SQLINTEGER SQL_ATTR_ASYNC_DBC_FUNCTIONS_ENABLE = 117;
665 	enum SQLINTEGER SQL_ATTR_ASYNC_DBC_EVENT = 119;
666 	enum SQLINTEGER SQL_ATTR_CREDENTIALS = 122;
667 	enum SQLINTEGER SQL_ATTR_REFRESH_CONNECTION = 123;
668 	enum SQLUINTEGER SQL_MODE_READ_WRITE = 0u;
669 	enum SQLUINTEGER SQL_MODE_READ_ONLY = 1u;
670 	enum SQLUINTEGER SQL_AUTOCOMMIT_OFF = 0u;
671 	enum SQLUINTEGER SQL_AUTOCOMMIT_ON = 1u;
672 	enum SQLUINTEGER SQL_LOGIN_TIMEOUT_DEFAULT = 15u;
673 	enum SQLUINTEGER SQL_OPT_TRACE_OFF = 0u;
674 	enum SQLUINTEGER SQL_OPT_TRACE_ON = 1u;
675 	enum SQL_OPT_TRACE_FILE_DEFAULT = "\\SQL.LOG";
676 	enum SQLUINTEGER SQL_CUR_USE_IF_NEEDED = 0u;
677 	enum SQLUINTEGER SQL_CUR_USE_ODBC = 1u;
678 	enum SQLUINTEGER SQL_CUR_USE_DRIVER = 2u;
679 	enum SQLUINTEGER SQL_DB_RETURN_TO_POOL = 0u;
680 	enum SQLUINTEGER SQL_DB_DISCONNECT = 1u;
681 	enum SQLINTEGER SQL_DTC_DONE = 0;
682 	enum SQLINTEGER SQL_CD_TRUE = 1;
683 	enum SQLINTEGER SQL_CD_FALSE = 0;
684 	enum SQLINTEGER SQL_AA_TRUE = 1;
685 	enum SQLINTEGER SQL_AA_FALSE = 0;
686 	enum SQLUINTEGER SQL_RESET_CONNECTION_YES = 1u;
687 	enum SQLUINTEGER SQL_ASYNC_DBC_ENABLE_ON = 1u;
688 	enum SQLUINTEGER SQL_ASYNC_DBC_ENABLE_OFF = 0u;
689 	enum SQLINTEGER SQL_REFRESH_NOW = -1;
690 	enum SQLINTEGER SQL_REFRESH_AUTO = 0;
691 	enum SQLINTEGER SQL_REFRESH_MANUAL = 1;
692 	enum SQLINTEGER SQL_QUERY_TIMEOUT = 0;
693 	enum SQLINTEGER SQL_MAX_ROWS = 1;
694 	enum SQLINTEGER SQL_NOSCAN = 2;
695 	enum SQLINTEGER SQL_MAX_LENGTH = 3;
696 	enum SQLINTEGER SQL_ASYNC_ENABLE = 4;
697 	enum SQLINTEGER SQL_BIND_TYPE = 5;
698 	enum SQLINTEGER SQL_CURSOR_TYPE = 6;
699 	enum SQLINTEGER SQL_CONCURRENCY = 7;
700 	enum SQLINTEGER SQL_KEYSET_SIZE = 8;
701 	enum SQLINTEGER SQL_ROWSET_SIZE = 9;
702 	enum SQLINTEGER SQL_SIMULATE_CURSOR = 10;
703 	enum SQLINTEGER SQL_RETRIEVE_DATA = 11;
704 	enum SQLINTEGER SQL_USE_BOOKMARKS = 12;
705 	enum SQLINTEGER SQL_GET_BOOKMARK = 13;
706 	enum SQLINTEGER SQL_ROW_NUMBER = 14;
707 	enum SQLINTEGER SQL_ATTR_ENABLE_AUTO_IPD = 15;
708 	enum SQLINTEGER SQL_ATTR_FETCH_BOOKMARK_PTR = 16;
709 	enum SQLINTEGER SQL_ATTR_PARAM_BIND_OFFSET_PTR = 17;
710 	enum SQLINTEGER SQL_ATTR_PARAM_BIND_TYPE = 18;
711 	enum SQLINTEGER SQL_ATTR_PARAM_OPERATION_PTR = 19;
712 	enum SQLINTEGER SQL_ATTR_PARAM_STATUS_PTR = 20;
713 	enum SQLINTEGER SQL_ATTR_PARAMS_PROCESSED_PTR = 21;
714 	enum SQLINTEGER SQL_ATTR_PARAMSET_SIZE = 22;
715 	enum SQLINTEGER SQL_ATTR_ROW_BIND_OFFSET_PTR = 23;
716 	enum SQLINTEGER SQL_ATTR_ROW_OPERATION_PTR = 24;
717 	enum SQLINTEGER SQL_ATTR_ROW_STATUS_PTR = 25;
718 	enum SQLINTEGER SQL_ATTR_ROWS_FETCHED_PTR = 26;
719 	enum SQLINTEGER SQL_ATTR_ROW_ARRAY_SIZE = 27;
720 	enum SQLINTEGER SQL_ATTR_ASYNC_STMT_EVENT = 29;
721 	enum SQLINTEGER SQL_ATTR_SAMPLE_SIZE = 30;
722 	enum SQLINTEGER SQL_ATTR_DYNAMIC_COLUMNS = 31;
723 	enum SQLINTEGER SQL_ATTR_TYPE_EXCEPTION_BEHAVIOR = 32;
724 	enum SQLINTEGER SQL_ATTR_LENGTH_EXCEPTION_BEHAVIOR = 33;
725 	enum SQLINTEGER SQL_TE_ERROR = 1;
726 	enum SQLINTEGER SQL_TE_CONTINUE = 2;
727 	enum SQLINTEGER SQL_TE_REPORT = 3;
728 	enum SQLINTEGER SQL_LE_CONTINUE = 1;
729 	enum SQLINTEGER SQL_LE_REPORT = 2;
730 	auto SQL_IS_POINTER()()
731 	{
732 		return -4;
733 	}
734 	auto SQL_IS_UINTEGER()()
735 	{
736 		return -5;
737 	}
738 	auto SQL_IS_INTEGER()()
739 	{
740 		return -6;
741 	}
742 	auto SQL_IS_USMALLINT()()
743 	{
744 		return -7;
745 	}
746 	auto SQL_IS_SMALLINT()()
747 	{
748 		return -8;
749 	}
750 	enum SQLUINTEGER SQL_PARAM_BIND_BY_COLUMN = 0u;
751 	enum SQLUINTEGER SQL_QUERY_TIMEOUT_DEFAULT = 0u;
752 	enum SQLUINTEGER SQL_MAX_ROWS_DEFAULT = 0u;
753 	enum SQLUINTEGER SQL_NOSCAN_OFF = 0u;
754 	enum SQLUINTEGER SQL_NOSCAN_ON = 1u;
755 	enum SQLUINTEGER SQL_MAX_LENGTH_DEFAULT = 0u;
756 	enum SQLUINTEGER SQL_ASYNC_ENABLE_OFF = 0u;
757 	enum SQLUINTEGER SQL_ASYNC_ENABLE_ON = 1u;
758 	enum SQLUINTEGER SQL_BIND_BY_COLUMN = 0u;
759 	enum SQLINTEGER SQL_CONCUR_READ_ONLY = 1;
760 	enum SQLINTEGER SQL_CONCUR_LOCK = 2;
761 	enum SQLINTEGER SQL_CONCUR_ROWVER = 3;
762 	enum SQLINTEGER SQL_CONCUR_VALUES = 4;
763 	enum SQLUINTEGER SQL_CURSOR_FORWARD_ONLY = 0u;
764 	enum SQLUINTEGER SQL_CURSOR_KEYSET_DRIVEN = 1u;
765 	enum SQLUINTEGER SQL_CURSOR_DYNAMIC = 2u;
766 	enum SQLUINTEGER SQL_CURSOR_STATIC = 3u;
767 	enum SQLUINTEGER SQL_ROWSET_SIZE_DEFAULT = 1u;
768 	enum SQLUINTEGER SQL_KEYSET_SIZE_DEFAULT = 0u;
769 	enum SQLUINTEGER SQL_SC_NON_UNIQUE = 0u;
770 	enum SQLUINTEGER SQL_SC_TRY_UNIQUE = 1u;
771 	enum SQLUINTEGER SQL_SC_UNIQUE = 2u;
772 	enum SQLUINTEGER SQL_RD_OFF = 0u;
773 	enum SQLUINTEGER SQL_RD_ON = 1u;
774 	enum SQLUINTEGER SQL_UB_OFF = 0u;
775 	enum SQLUINTEGER SQL_UB_ON = 1u;
776 	enum SQLUINTEGER SQL_UB_VARIABLE = 2u;
777 	enum SQLINTEGER SQL_DESC_ARRAY_SIZE = 20;
778 	enum SQLINTEGER SQL_DESC_ARRAY_STATUS_PTR = 21;
779 	enum SQLINTEGER SQL_DESC_BASE_COLUMN_NAME = 22;
780 	enum SQLINTEGER SQL_DESC_BASE_TABLE_NAME = 23;
781 	enum SQLINTEGER SQL_DESC_BIND_OFFSET_PTR = 24;
782 	enum SQLINTEGER SQL_DESC_BIND_TYPE = 25;
783 	enum SQLINTEGER SQL_DESC_DATETIME_INTERVAL_PRECISION = 26;
784 	enum SQLINTEGER SQL_DESC_LITERAL_PREFIX = 27;
785 	enum SQLINTEGER SQL_DESC_LITERAL_SUFFIX = 28;
786 	enum SQLINTEGER SQL_DESC_LOCAL_TYPE_NAME = 29;
787 	enum SQLINTEGER SQL_DESC_MAXIMUM_SCALE = 30;
788 	enum SQLINTEGER SQL_DESC_MINIMUM_SCALE = 31;
789 	enum SQLINTEGER SQL_DESC_NUM_PREC_RADIX = 32;
790 	enum SQLINTEGER SQL_DESC_PARAMETER_TYPE = 33;
791 	enum SQLINTEGER SQL_DESC_ROWS_PROCESSED_PTR = 34;
792 	enum SQLINTEGER SQL_DESC_ROWVER = 35;
793 	enum SQLINTEGER SQL_DESC_MIME_TYPE = 36;
794 	auto SQL_DIAG_CURSOR_ROW_COUNT()()
795 	{
796 		return -1249;
797 	}
798 	auto SQL_DIAG_ROW_NUMBER()()
799 	{
800 		return -1248;
801 	}
802 	auto SQL_DIAG_COLUMN_NUMBER()()
803 	{
804 		return -1247;
805 	}
806 	enum SQLINTEGER SQL_DATE = 9;
807 	enum SQLINTEGER SQL_INTERVAL = 10;
808 	enum SQLINTEGER SQL_TIME = 10;
809 	enum SQLINTEGER SQL_TIMESTAMP = 11;
810 	auto SQL_LONGVARCHAR()()
811 	{
812 		return -1;
813 	}
814 	auto SQL_BINARY()()
815 	{
816 		return -2;
817 	}
818 	auto SQL_VARBINARY()()
819 	{
820 		return -3;
821 	}
822 	auto SQL_LONGVARBINARY()()
823 	{
824 		return -4;
825 	}
826 	auto SQL_BIGINT()()
827 	{
828 		return -5;
829 	}
830 	auto SQL_TINYINT()()
831 	{
832 		return -6;
833 	}
834 	auto SQL_BIT()()
835 	{
836 		return -7;
837 	}
838 	auto SQL_GUID()()
839 	{
840 		return -11;
841 	}
842 	enum SQLINTEGER SQL_CODE_YEAR = 1;
843 	enum SQLINTEGER SQL_CODE_MONTH = 2;
844 	enum SQLINTEGER SQL_CODE_DAY = 3;
845 	enum SQLINTEGER SQL_CODE_HOUR = 4;
846 	enum SQLINTEGER SQL_CODE_MINUTE = 5;
847 	enum SQLINTEGER SQL_CODE_SECOND = 6;
848 	enum SQLINTEGER SQL_CODE_YEAR_TO_MONTH = 7;
849 	enum SQLINTEGER SQL_CODE_DAY_TO_HOUR = 8;
850 	enum SQLINTEGER SQL_CODE_DAY_TO_MINUTE = 9;
851 	enum SQLINTEGER SQL_CODE_DAY_TO_SECOND = 10;
852 	enum SQLINTEGER SQL_CODE_HOUR_TO_MINUTE = 11;
853 	enum SQLINTEGER SQL_CODE_HOUR_TO_SECOND = 12;
854 	enum SQLINTEGER SQL_CODE_MINUTE_TO_SECOND = 13;
855 	auto SQL_INTERVAL_YEAR()()
856 	{
857 		return 100 + SQL_CODE_YEAR;
858 	}
859 	auto SQL_INTERVAL_MONTH()()
860 	{
861 		return 100 + SQL_CODE_MONTH;
862 	}
863 	auto SQL_INTERVAL_DAY()()
864 	{
865 		return 100 + SQL_CODE_DAY;
866 	}
867 	auto SQL_INTERVAL_HOUR()()
868 	{
869 		return 100 + SQL_CODE_HOUR;
870 	}
871 	auto SQL_INTERVAL_MINUTE()()
872 	{
873 		return 100 + SQL_CODE_MINUTE;
874 	}
875 	auto SQL_INTERVAL_SECOND()()
876 	{
877 		return 100 + SQL_CODE_SECOND;
878 	}
879 	auto SQL_INTERVAL_YEAR_TO_MONTH()()
880 	{
881 		return 100 + SQL_CODE_YEAR_TO_MONTH;
882 	}
883 	auto SQL_INTERVAL_DAY_TO_HOUR()()
884 	{
885 		return 100 + SQL_CODE_DAY_TO_HOUR;
886 	}
887 	auto SQL_INTERVAL_DAY_TO_MINUTE()()
888 	{
889 		return 100 + SQL_CODE_DAY_TO_MINUTE;
890 	}
891 	auto SQL_INTERVAL_DAY_TO_SECOND()()
892 	{
893 		return 100 + SQL_CODE_DAY_TO_SECOND;
894 	}
895 	auto SQL_INTERVAL_HOUR_TO_MINUTE()()
896 	{
897 		return 100 + SQL_CODE_HOUR_TO_MINUTE;
898 	}
899 	auto SQL_INTERVAL_HOUR_TO_SECOND()()
900 	{
901 		return 100 + SQL_CODE_HOUR_TO_SECOND;
902 	}
903 	auto SQL_INTERVAL_MINUTE_TO_SECOND()()
904 	{
905 		return 100 + SQL_CODE_MINUTE_TO_SECOND;
906 	}
907 	enum SQLINTEGER SQL_C_DEFAULT = 99;
908 	auto SQL_SIGNED_OFFSET()()
909 	{
910 		return -20;
911 	}
912 	auto SQL_UNSIGNED_OFFSET()()
913 	{
914 		return -22;
915 	}
916 	auto SQL_C_SBIGINT()()
917 	{
918 		return SQL_BIGINT + SQL_SIGNED_OFFSET;
919 	}
920 	auto SQL_C_UBIGINT()()
921 	{
922 		return SQL_BIGINT + SQL_UNSIGNED_OFFSET;
923 	}
924 	auto SQL_C_SLONG()()
925 	{
926 		return SQL_C_LONG + SQL_SIGNED_OFFSET;
927 	}
928 	auto SQL_C_SSHORT()()
929 	{
930 		return SQL_C_SHORT + SQL_SIGNED_OFFSET;
931 	}
932 	auto SQL_C_STINYINT()()
933 	{
934 		return SQL_TINYINT + SQL_SIGNED_OFFSET;
935 	}
936 	auto SQL_C_ULONG()()
937 	{
938 		return SQL_C_LONG + SQL_UNSIGNED_OFFSET;
939 	}
940 	auto SQL_C_USHORT()()
941 	{
942 		return SQL_C_SHORT + SQL_UNSIGNED_OFFSET;
943 	}
944 	auto SQL_C_UTINYINT()()
945 	{
946 		return SQL_TINYINT + SQL_UNSIGNED_OFFSET;
947 	}
948 	enum SQLINTEGER SQL_TYPE_NULL = 0;
949 	enum SQLINTEGER SQL_DRIVER_C_TYPE_BASE = 16384;
950 	enum SQLINTEGER SQL_DRIVER_SQL_TYPE_BASE = 16384;
951 	enum SQLINTEGER SQL_DRIVER_DESC_FIELD_BASE = 16384;
952 	enum SQLINTEGER SQL_DRIVER_DIAG_FIELD_BASE = 16384;
953 	enum SQLINTEGER SQL_DRIVER_INFO_TYPE_BASE = 16384;
954 	enum SQLINTEGER SQL_DRIVER_CONN_ATTR_BASE = 16384;
955 	enum SQLINTEGER SQL_DRIVER_STMT_ATTR_BASE = 16384;
956 	auto SQL_NO_ROW_NUMBER()()
957 	{
958 		return -1;
959 	}
960 	auto SQL_NO_COLUMN_NUMBER()()
961 	{
962 		return -1;
963 	}
964 	auto SQL_ROW_NUMBER_UNKNOWN()()
965 	{
966 		return -2;
967 	}
968 	auto SQL_COLUMN_NUMBER_UNKNOWN()()
969 	{
970 		return -2;
971 	}
972 	auto SQL_DEFAULT_PARAM()()
973 	{
974 		return -5;
975 	}
976 	auto SQL_IGNORE()()
977 	{
978 		return -6;
979 	}
980 	auto SQL_LEN_DATA_AT_EXEC_OFFSET()()
981 	{
982 		return -100;
983 	}
984 	auto SQL_LEN_DATA_AT_EXEC(__MP2)(__MP2 length)
985 	{
986 		return -length + SQL_LEN_DATA_AT_EXEC_OFFSET;
987 	}
988 	auto SQL_LEN_BINARY_ATTR_OFFSET()()
989 	{
990 		return -100;
991 	}
992 	auto SQL_LEN_BINARY_ATTR(__MP3)(__MP3 length)
993 	{
994 		return -length + SQL_LEN_BINARY_ATTR_OFFSET;
995 	}
996 	auto SQL_SETPARAM_VALUE_MAX()()
997 	{
998 		return -1;
999 	}
1000 	auto SQL_TYPE_EXCEPTION()()
1001 	{
1002 		return -20;
1003 	}
1004 	enum SQLINTEGER SQL_COLUMN_COUNT = 0;
1005 	enum SQLINTEGER SQL_COLUMN_NAME = 1;
1006 	enum SQLINTEGER SQL_COLUMN_TYPE = 2;
1007 	enum SQLINTEGER SQL_COLUMN_LENGTH = 3;
1008 	enum SQLINTEGER SQL_COLUMN_PRECISION = 4;
1009 	enum SQLINTEGER SQL_COLUMN_SCALE = 5;
1010 	enum SQLINTEGER SQL_COLUMN_DISPLAY_SIZE = 6;
1011 	enum SQLINTEGER SQL_COLUMN_NULLABLE = 7;
1012 	enum SQLINTEGER SQL_COLUMN_UNSIGNED = 8;
1013 	enum SQLINTEGER SQL_COLUMN_MONEY = 9;
1014 	enum SQLINTEGER SQL_COLUMN_UPDATABLE = 10;
1015 	enum SQLINTEGER SQL_COLUMN_AUTO_INCREMENT = 11;
1016 	enum SQLINTEGER SQL_COLUMN_CASE_SENSITIVE = 12;
1017 	enum SQLINTEGER SQL_COLUMN_SEARCHABLE = 13;
1018 	enum SQLINTEGER SQL_COLUMN_TYPE_NAME = 14;
1019 	enum SQLINTEGER SQL_COLUMN_TABLE_NAME = 15;
1020 	enum SQLINTEGER SQL_COLUMN_OWNER_NAME = 16;
1021 	enum SQLINTEGER SQL_COLUMN_QUALIFIER_NAME = 17;
1022 	enum SQLINTEGER SQL_COLUMN_LABEL = 18;
1023 	enum SQLINTEGER SQL_ATTR_READONLY = 0;
1024 	enum SQLINTEGER SQL_ATTR_WRITE = 1;
1025 	enum SQLINTEGER SQL_ATTR_READWRITE_UNKNOWN = 2;
1026 	enum SQLINTEGER SQL_UNSEARCHABLE = 0;
1027 	enum SQLINTEGER SQL_LIKE_ONLY = 1;
1028 	enum SQLINTEGER SQL_ALL_EXCEPT_LIKE = 2;
1029 	enum SQLINTEGER SQL_SEARCHABLE = 3;
1030 	auto SQL_NO_TOTAL()()
1031 	{
1032 		return -4;
1033 	}
1034 	enum SQLINTEGER SQL_INFO_FIRST = 0;
1035 	enum SQLINTEGER SQL_ACTIVE_CONNECTIONS = 0;
1036 	enum SQLINTEGER SQL_ACTIVE_STATEMENTS = 1;
1037 	enum SQLINTEGER SQL_DRIVER_HDBC = 3;
1038 	enum SQLINTEGER SQL_DRIVER_HENV = 4;
1039 	enum SQLINTEGER SQL_DRIVER_HSTMT = 5;
1040 	enum SQLINTEGER SQL_DRIVER_NAME = 6;
1041 	enum SQLINTEGER SQL_DRIVER_VER = 7;
1042 	enum SQLINTEGER SQL_ODBC_API_CONFORMANCE = 9;
1043 	enum SQLINTEGER SQL_ODBC_VER = 10;
1044 	enum SQLINTEGER SQL_ROW_UPDATES = 11;
1045 	enum SQLINTEGER SQL_ODBC_SAG_CLI_CONFORMANCE = 12;
1046 	enum SQLINTEGER SQL_ODBC_SQL_CONFORMANCE = 15;
1047 	enum SQLINTEGER SQL_PROCEDURES = 21;
1048 	enum SQLINTEGER SQL_CONCAT_NULL_BEHAVIOR = 22;
1049 	enum SQLINTEGER SQL_CURSOR_ROLLBACK_BEHAVIOR = 24;
1050 	enum SQLINTEGER SQL_EXPRESSIONS_IN_ORDERBY = 27;
1051 	enum SQLINTEGER SQL_MAX_OWNER_NAME_LEN = 32;
1052 	enum SQLINTEGER SQL_MAX_PROCEDURE_NAME_LEN = 33;
1053 	enum SQLINTEGER SQL_MAX_QUALIFIER_NAME_LEN = 34;
1054 	enum SQLINTEGER SQL_MULT_RESULT_SETS = 36;
1055 	enum SQLINTEGER SQL_MULTIPLE_ACTIVE_TXN = 37;
1056 	enum SQLINTEGER SQL_OUTER_JOINS = 38;
1057 	enum SQLINTEGER SQL_OWNER_TERM = 39;
1058 	enum SQLINTEGER SQL_PROCEDURE_TERM = 40;
1059 	enum SQLINTEGER SQL_QUALIFIER_NAME_SEPARATOR = 41;
1060 	enum SQLINTEGER SQL_QUALIFIER_TERM = 42;
1061 	enum SQLINTEGER SQL_SCROLL_OPTIONS = 44;
1062 	enum SQLINTEGER SQL_TABLE_TERM = 45;
1063 	enum SQLINTEGER SQL_CONVERT_FUNCTIONS = 48;
1064 	enum SQLINTEGER SQL_NUMERIC_FUNCTIONS = 49;
1065 	enum SQLINTEGER SQL_STRING_FUNCTIONS = 50;
1066 	enum SQLINTEGER SQL_SYSTEM_FUNCTIONS = 51;
1067 	enum SQLINTEGER SQL_TIMEDATE_FUNCTIONS = 52;
1068 	enum SQLINTEGER SQL_CONVERT_BIGINT = 53;
1069 	enum SQLINTEGER SQL_CONVERT_BINARY = 54;
1070 	enum SQLINTEGER SQL_CONVERT_BIT = 55;
1071 	enum SQLINTEGER SQL_CONVERT_CHAR = 56;
1072 	enum SQLINTEGER SQL_CONVERT_DATE = 57;
1073 	enum SQLINTEGER SQL_CONVERT_DECIMAL = 58;
1074 	enum SQLINTEGER SQL_CONVERT_DOUBLE = 59;
1075 	enum SQLINTEGER SQL_CONVERT_FLOAT = 60;
1076 	enum SQLINTEGER SQL_CONVERT_INTEGER = 61;
1077 	enum SQLINTEGER SQL_CONVERT_LONGVARCHAR = 62;
1078 	enum SQLINTEGER SQL_CONVERT_NUMERIC = 63;
1079 	enum SQLINTEGER SQL_CONVERT_REAL = 64;
1080 	enum SQLINTEGER SQL_CONVERT_SMALLINT = 65;
1081 	enum SQLINTEGER SQL_CONVERT_TIME = 66;
1082 	enum SQLINTEGER SQL_CONVERT_TIMESTAMP = 67;
1083 	enum SQLINTEGER SQL_CONVERT_TINYINT = 68;
1084 	enum SQLINTEGER SQL_CONVERT_VARBINARY = 69;
1085 	enum SQLINTEGER SQL_CONVERT_VARCHAR = 70;
1086 	enum SQLINTEGER SQL_CONVERT_LONGVARBINARY = 71;
1087 	enum SQLINTEGER SQL_ODBC_SQL_OPT_IEF = 73;
1088 	enum SQLINTEGER SQL_CORRELATION_NAME = 74;
1089 	enum SQLINTEGER SQL_NON_NULLABLE_COLUMNS = 75;
1090 	enum SQLINTEGER SQL_DRIVER_HLIB = 76;
1091 	enum SQLINTEGER SQL_DRIVER_ODBC_VER = 77;
1092 	enum SQLINTEGER SQL_LOCK_TYPES = 78;
1093 	enum SQLINTEGER SQL_POS_OPERATIONS = 79;
1094 	enum SQLINTEGER SQL_POSITIONED_STATEMENTS = 80;
1095 	enum SQLINTEGER SQL_BOOKMARK_PERSISTENCE = 82;
1096 	enum SQLINTEGER SQL_STATIC_SENSITIVITY = 83;
1097 	enum SQLINTEGER SQL_FILE_USAGE = 84;
1098 	enum SQLINTEGER SQL_COLUMN_ALIAS = 87;
1099 	enum SQLINTEGER SQL_GROUP_BY = 88;
1100 	enum SQLINTEGER SQL_KEYWORDS = 89;
1101 	enum SQLINTEGER SQL_OWNER_USAGE = 91;
1102 	enum SQLINTEGER SQL_QUALIFIER_USAGE = 92;
1103 	enum SQLINTEGER SQL_QUOTED_IDENTIFIER_CASE = 93;
1104 	enum SQLINTEGER SQL_SUBQUERIES = 95;
1105 	enum SQLINTEGER SQL_UNION = 96;
1106 	enum SQLINTEGER SQL_MAX_ROW_SIZE_INCLUDES_LONG = 103;
1107 	enum SQLINTEGER SQL_MAX_CHAR_LITERAL_LEN = 108;
1108 	enum SQLINTEGER SQL_TIMEDATE_ADD_INTERVALS = 109;
1109 	enum SQLINTEGER SQL_TIMEDATE_DIFF_INTERVALS = 110;
1110 	enum SQLINTEGER SQL_NEED_LONG_DATA_LEN = 111;
1111 	enum SQLINTEGER SQL_MAX_BINARY_LITERAL_LEN = 112;
1112 	enum SQLINTEGER SQL_LIKE_ESCAPE_CLAUSE = 113;
1113 	enum SQLINTEGER SQL_QUALIFIER_LOCATION = 114;
1114 	enum SQLINTEGER SQL_ACTIVE_ENVIRONMENTS = 116;
1115 	enum SQLINTEGER SQL_ALTER_DOMAIN = 117;
1116 	enum SQLINTEGER SQL_SQL_CONFORMANCE = 118;
1117 	enum SQLINTEGER SQL_DATETIME_LITERALS = 119;
1118 	enum SQLINTEGER SQL_ASYNC_MODE = 10021;
1119 	enum SQLINTEGER SQL_BATCH_ROW_COUNT = 120;
1120 	enum SQLINTEGER SQL_BATCH_SUPPORT = 121;
1121 	enum SQLINTEGER SQL_CONVERT_WCHAR = 122;
1122 	enum SQLINTEGER SQL_CONVERT_INTERVAL_DAY_TIME = 123;
1123 	enum SQLINTEGER SQL_CONVERT_INTERVAL_YEAR_MONTH = 124;
1124 	enum SQLINTEGER SQL_CONVERT_WLONGVARCHAR = 125;
1125 	enum SQLINTEGER SQL_CONVERT_WVARCHAR = 126;
1126 	enum SQLINTEGER SQL_CREATE_ASSERTION = 127;
1127 	enum SQLINTEGER SQL_CREATE_CHARACTER_SET = 128;
1128 	enum SQLINTEGER SQL_CREATE_COLLATION = 129;
1129 	enum SQLINTEGER SQL_CREATE_DOMAIN = 130;
1130 	enum SQLINTEGER SQL_CREATE_SCHEMA = 131;
1131 	enum SQLINTEGER SQL_CREATE_TABLE = 132;
1132 	enum SQLINTEGER SQL_CREATE_TRANSLATION = 133;
1133 	enum SQLINTEGER SQL_CREATE_VIEW = 134;
1134 	enum SQLINTEGER SQL_DRIVER_HDESC = 135;
1135 	enum SQLINTEGER SQL_DROP_ASSERTION = 136;
1136 	enum SQLINTEGER SQL_DROP_CHARACTER_SET = 137;
1137 	enum SQLINTEGER SQL_DROP_COLLATION = 138;
1138 	enum SQLINTEGER SQL_DROP_DOMAIN = 139;
1139 	enum SQLINTEGER SQL_DROP_SCHEMA = 140;
1140 	enum SQLINTEGER SQL_DROP_TABLE = 141;
1141 	enum SQLINTEGER SQL_DROP_TRANSLATION = 142;
1142 	enum SQLINTEGER SQL_DROP_VIEW = 143;
1143 	enum SQLINTEGER SQL_DYNAMIC_CURSOR_ATTRIBUTES1 = 144;
1144 	enum SQLINTEGER SQL_DYNAMIC_CURSOR_ATTRIBUTES2 = 145;
1145 	enum SQLINTEGER SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 = 146;
1146 	enum SQLINTEGER SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 = 147;
1147 	enum SQLINTEGER SQL_INDEX_KEYWORDS = 148;
1148 	enum SQLINTEGER SQL_INFO_SCHEMA_VIEWS = 149;
1149 	enum SQLINTEGER SQL_KEYSET_CURSOR_ATTRIBUTES1 = 150;
1150 	enum SQLINTEGER SQL_KEYSET_CURSOR_ATTRIBUTES2 = 151;
1151 	enum SQLINTEGER SQL_MAX_ASYNC_CONCURRENT_STATEMENTS = 10022;
1152 	enum SQLINTEGER SQL_ODBC_INTERFACE_CONFORMANCE = 152;
1153 	enum SQLINTEGER SQL_PARAM_ARRAY_ROW_COUNTS = 153;
1154 	enum SQLINTEGER SQL_PARAM_ARRAY_SELECTS = 154;
1155 	enum SQLINTEGER SQL_SQL92_DATETIME_FUNCTIONS = 155;
1156 	enum SQLINTEGER SQL_SQL92_FOREIGN_KEY_DELETE_RULE = 156;
1157 	enum SQLINTEGER SQL_SQL92_FOREIGN_KEY_UPDATE_RULE = 157;
1158 	enum SQLINTEGER SQL_SQL92_GRANT = 158;
1159 	enum SQLINTEGER SQL_SQL92_NUMERIC_VALUE_FUNCTIONS = 159;
1160 	enum SQLINTEGER SQL_SQL92_PREDICATES = 160;
1161 	enum SQLINTEGER SQL_SQL92_RELATIONAL_JOIN_OPERATORS = 161;
1162 	enum SQLINTEGER SQL_SQL92_REVOKE = 162;
1163 	enum SQLINTEGER SQL_SQL92_ROW_VALUE_CONSTRUCTOR = 163;
1164 	enum SQLINTEGER SQL_SQL92_STRING_FUNCTIONS = 164;
1165 	enum SQLINTEGER SQL_SQL92_VALUE_EXPRESSIONS = 165;
1166 	enum SQLINTEGER SQL_STANDARD_CLI_CONFORMANCE = 166;
1167 	enum SQLINTEGER SQL_STATIC_CURSOR_ATTRIBUTES1 = 167;
1168 	enum SQLINTEGER SQL_STATIC_CURSOR_ATTRIBUTES2 = 168;
1169 	enum SQLINTEGER SQL_AGGREGATE_FUNCTIONS = 169;
1170 	enum SQLINTEGER SQL_DDL_INDEX = 170;
1171 	enum SQLINTEGER SQL_DM_VER = 171;
1172 	enum SQLINTEGER SQL_INSERT_STATEMENT = 172;
1173 	enum SQLINTEGER SQL_CONVERT_GUID = 173;
1174 	enum SQLINTEGER SQL_SCHEMA_INFERENCE = 174;
1175 	enum SQLINTEGER SQL_BINARY_FUNCTIONS = 175;
1176 	enum SQLINTEGER SQL_ISO_STRING_FUNCTIONS = 176;
1177 	enum SQLINTEGER SQL_ISO_BINARY_FUNCTIONS = 177;
1178 	enum SQLINTEGER SQL_LIMIT_ESCAPE_CLAUSE = 178;
1179 	enum SQLINTEGER SQL_NATIVE_ESCAPE_CLAUSE = 179;
1180 	enum SQLINTEGER SQL_RETURN_ESCAPE_CLAUSE = 180;
1181 	enum SQLINTEGER SQL_FORMAT_ESCAPE_CLAUSE = 181;
1182 	enum SQLINTEGER SQL_ASYNC_DBC_FUNCTIONS = 10023;
1183 	enum SQLINTEGER SQL_DRIVER_AWARE_POOLING_SUPPORTED = 10024;
1184 	enum SQLINTEGER SQL_ASYNC_NOTIFICATION = 10025;
1185 	enum SQLINTEGER SQL_ASYNC_NOTIFICATION_NOT_CAPABLE = 0;
1186 	enum SQLINTEGER SQL_ASYNC_NOTIFICATION_CAPABLE = 1;
1187 	enum SQLINTEGER SQL_DTC_TRANSITION_COST = 1750;
1188 	enum SQLINTEGER SQL_AT_ADD_COLUMN_SINGLE = 32;
1189 	enum SQLINTEGER SQL_AT_ADD_COLUMN_DEFAULT = 64;
1190 	enum SQLINTEGER SQL_AT_ADD_COLUMN_COLLATION = 128;
1191 	enum SQLINTEGER SQL_AT_SET_COLUMN_DEFAULT = 256;
1192 	enum SQLINTEGER SQL_AT_DROP_COLUMN_DEFAULT = 512;
1193 	enum SQLINTEGER SQL_AT_DROP_COLUMN_CASCADE = 1024;
1194 	enum SQLINTEGER SQL_AT_DROP_COLUMN_RESTRICT = 2048;
1195 	enum SQLINTEGER SQL_AT_ADD_TABLE_CONSTRAINT = 4096;
1196 	enum SQLINTEGER SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE = 8192;
1197 	enum SQLINTEGER SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT = 16384;
1198 	enum SQLINTEGER SQL_AT_CONSTRAINT_NAME_DEFINITION = 32768;
1199 	enum SQLINTEGER SQL_AT_CONSTRAINT_INITIALLY_DEFERRED = 65536;
1200 	enum SQLINTEGER SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE = 131072;
1201 	enum SQLINTEGER SQL_AT_CONSTRAINT_DEFERRABLE = 262144;
1202 	enum SQLINTEGER SQL_AT_CONSTRAINT_NON_DEFERRABLE = 524288;
1203 	enum SQLINTEGER SQL_CVT_CHAR = 1;
1204 	enum SQLINTEGER SQL_CVT_NUMERIC = 2;
1205 	enum SQLINTEGER SQL_CVT_DECIMAL = 4;
1206 	enum SQLINTEGER SQL_CVT_INTEGER = 8;
1207 	enum SQLINTEGER SQL_CVT_SMALLINT = 16;
1208 	enum SQLINTEGER SQL_CVT_FLOAT = 32;
1209 	enum SQLINTEGER SQL_CVT_REAL = 64;
1210 	enum SQLINTEGER SQL_CVT_DOUBLE = 128;
1211 	enum SQLINTEGER SQL_CVT_VARCHAR = 256;
1212 	enum SQLINTEGER SQL_CVT_LONGVARCHAR = 512;
1213 	enum SQLINTEGER SQL_CVT_BINARY = 1024;
1214 	enum SQLINTEGER SQL_CVT_VARBINARY = 2048;
1215 	enum SQLINTEGER SQL_CVT_BIT = 4096;
1216 	enum SQLINTEGER SQL_CVT_TINYINT = 8192;
1217 	enum SQLINTEGER SQL_CVT_BIGINT = 16384;
1218 	enum SQLINTEGER SQL_CVT_DATE = 32768;
1219 	enum SQLINTEGER SQL_CVT_TIME = 65536;
1220 	enum SQLINTEGER SQL_CVT_TIMESTAMP = 131072;
1221 	enum SQLINTEGER SQL_CVT_LONGVARBINARY = 262144;
1222 	enum SQLINTEGER SQL_CVT_INTERVAL_YEAR_MONTH = 524288;
1223 	enum SQLINTEGER SQL_CVT_INTERVAL_DAY_TIME = 1048576;
1224 	enum SQLINTEGER SQL_CVT_WCHAR = 2097152;
1225 	enum SQLINTEGER SQL_CVT_WLONGVARCHAR = 4194304;
1226 	enum SQLINTEGER SQL_CVT_WVARCHAR = 8388608;
1227 	enum SQLINTEGER SQL_CVT_GUID = 16777216;
1228 	enum SQLINTEGER SQL_FN_CVT_CONVERT = 1;
1229 	enum SQLINTEGER SQL_FN_CVT_CAST = 2;
1230 	enum SQLINTEGER SQL_FN_STR_CONCAT = 1;
1231 	enum SQLINTEGER SQL_FN_STR_INSERT = 2;
1232 	enum SQLINTEGER SQL_FN_STR_LEFT = 4;
1233 	enum SQLINTEGER SQL_FN_STR_LTRIM = 8;
1234 	enum SQLINTEGER SQL_FN_STR_LENGTH = 16;
1235 	enum SQLINTEGER SQL_FN_STR_LOCATE = 32;
1236 	enum SQLINTEGER SQL_FN_STR_LCASE = 64;
1237 	enum SQLINTEGER SQL_FN_STR_REPEAT = 128;
1238 	enum SQLINTEGER SQL_FN_STR_REPLACE = 256;
1239 	enum SQLINTEGER SQL_FN_STR_RIGHT = 512;
1240 	enum SQLINTEGER SQL_FN_STR_RTRIM = 1024;
1241 	enum SQLINTEGER SQL_FN_STR_SUBSTRING = 2048;
1242 	enum SQLINTEGER SQL_FN_STR_UCASE = 4096;
1243 	enum SQLINTEGER SQL_FN_STR_ASCII = 8192;
1244 	enum SQLINTEGER SQL_FN_STR_CHAR = 16384;
1245 	enum SQLINTEGER SQL_FN_STR_DIFFERENCE = 32768;
1246 	enum SQLINTEGER SQL_FN_STR_LOCATE_2 = 65536;
1247 	enum SQLINTEGER SQL_FN_STR_SOUNDEX = 131072;
1248 	enum SQLINTEGER SQL_FN_STR_SPACE = 262144;
1249 	enum SQLINTEGER SQL_FN_STR_BIT_LENGTH = 524288;
1250 	enum SQLINTEGER SQL_FN_STR_CHAR_LENGTH = 1048576;
1251 	enum SQLINTEGER SQL_FN_STR_CHARACTER_LENGTH = 2097152;
1252 	enum SQLINTEGER SQL_FN_STR_OCTET_LENGTH = 4194304;
1253 	enum SQLINTEGER SQL_FN_STR_POSITION = 8388608;
1254 	enum SQLINTEGER SQL_SSF_CONVERT = 1;
1255 	enum SQLINTEGER SQL_SSF_LOWER = 2;
1256 	enum SQLINTEGER SQL_SSF_UPPER = 4;
1257 	enum SQLINTEGER SQL_SSF_SUBSTRING = 8;
1258 	enum SQLINTEGER SQL_SSF_TRANSLATE = 16;
1259 	enum SQLINTEGER SQL_SSF_TRIM_BOTH = 32;
1260 	enum SQLINTEGER SQL_SSF_TRIM_LEADING = 64;
1261 	enum SQLINTEGER SQL_SSF_TRIM_TRAILING = 128;
1262 	enum SQLINTEGER SQL_SSF_OVERLAY = 256;
1263 	enum SQLINTEGER SQL_SSF_LENGTH = 512;
1264 	enum SQLINTEGER SQL_SSF_POSITION = 1024;
1265 	enum SQLINTEGER SQL_SSF_CONCAT = 2048;
1266 	enum SQLINTEGER SQL_FN_NUM_ABS = 1;
1267 	enum SQLINTEGER SQL_FN_NUM_ACOS = 2;
1268 	enum SQLINTEGER SQL_FN_NUM_ASIN = 4;
1269 	enum SQLINTEGER SQL_FN_NUM_ATAN = 8;
1270 	enum SQLINTEGER SQL_FN_NUM_ATAN2 = 16;
1271 	enum SQLINTEGER SQL_FN_NUM_CEILING = 32;
1272 	enum SQLINTEGER SQL_FN_NUM_COS = 64;
1273 	enum SQLINTEGER SQL_FN_NUM_COT = 128;
1274 	enum SQLINTEGER SQL_FN_NUM_EXP = 256;
1275 	enum SQLINTEGER SQL_FN_NUM_FLOOR = 512;
1276 	enum SQLINTEGER SQL_FN_NUM_LOG = 1024;
1277 	enum SQLINTEGER SQL_FN_NUM_MOD = 2048;
1278 	enum SQLINTEGER SQL_FN_NUM_SIGN = 4096;
1279 	enum SQLINTEGER SQL_FN_NUM_SIN = 8192;
1280 	enum SQLINTEGER SQL_FN_NUM_SQRT = 16384;
1281 	enum SQLINTEGER SQL_FN_NUM_TAN = 32768;
1282 	enum SQLINTEGER SQL_FN_NUM_PI = 65536;
1283 	enum SQLINTEGER SQL_FN_NUM_RAND = 131072;
1284 	enum SQLINTEGER SQL_FN_NUM_DEGREES = 262144;
1285 	enum SQLINTEGER SQL_FN_NUM_LOG10 = 524288;
1286 	enum SQLINTEGER SQL_FN_NUM_POWER = 1048576;
1287 	enum SQLINTEGER SQL_FN_NUM_RADIANS = 2097152;
1288 	enum SQLINTEGER SQL_FN_NUM_ROUND = 4194304;
1289 	enum SQLINTEGER SQL_FN_NUM_TRUNCATE = 8388608;
1290 	enum SQLINTEGER SQL_SNVF_BIT_LENGTH = 1;
1291 	enum SQLINTEGER SQL_SNVF_CHAR_LENGTH = 2;
1292 	enum SQLINTEGER SQL_SNVF_CHARACTER_LENGTH = 4;
1293 	enum SQLINTEGER SQL_SNVF_EXTRACT = 8;
1294 	enum SQLINTEGER SQL_SNVF_OCTET_LENGTH = 16;
1295 	enum SQLINTEGER SQL_SNVF_POSITION = 32;
1296 	enum SQLINTEGER SQL_FN_TD_NOW = 1;
1297 	enum SQLINTEGER SQL_FN_TD_CURDATE = 2;
1298 	enum SQLINTEGER SQL_FN_TD_DAYOFMONTH = 4;
1299 	enum SQLINTEGER SQL_FN_TD_DAYOFWEEK = 8;
1300 	enum SQLINTEGER SQL_FN_TD_DAYOFYEAR = 16;
1301 	enum SQLINTEGER SQL_FN_TD_MONTH = 32;
1302 	enum SQLINTEGER SQL_FN_TD_QUARTER = 64;
1303 	enum SQLINTEGER SQL_FN_TD_WEEK = 128;
1304 	enum SQLINTEGER SQL_FN_TD_YEAR = 256;
1305 	enum SQLINTEGER SQL_FN_TD_CURTIME = 512;
1306 	enum SQLINTEGER SQL_FN_TD_HOUR = 1024;
1307 	enum SQLINTEGER SQL_FN_TD_MINUTE = 2048;
1308 	enum SQLINTEGER SQL_FN_TD_SECOND = 4096;
1309 	enum SQLINTEGER SQL_FN_TD_TIMESTAMPADD = 8192;
1310 	enum SQLINTEGER SQL_FN_TD_TIMESTAMPDIFF = 16384;
1311 	enum SQLINTEGER SQL_FN_TD_DAYNAME = 32768;
1312 	enum SQLINTEGER SQL_FN_TD_MONTHNAME = 65536;
1313 	enum SQLINTEGER SQL_FN_TD_CURRENT_DATE = 131072;
1314 	enum SQLINTEGER SQL_FN_TD_CURRENT_TIME = 262144;
1315 	enum SQLINTEGER SQL_FN_TD_CURRENT_TIMESTAMP = 524288;
1316 	enum SQLINTEGER SQL_FN_TD_EXTRACT = 1048576;
1317 	enum SQLINTEGER SQL_SDF_CURRENT_DATE = 1;
1318 	enum SQLINTEGER SQL_SDF_CURRENT_TIME = 2;
1319 	enum SQLINTEGER SQL_SDF_CURRENT_TIMESTAMP = 4;
1320 	enum SQLINTEGER SQL_FN_SYS_USERNAME = 1;
1321 	enum SQLINTEGER SQL_FN_SYS_DBNAME = 2;
1322 	enum SQLINTEGER SQL_FN_SYS_IFNULL = 4;
1323 	enum SQLINTEGER SQL_FN_TSI_FRAC_SECOND = 1;
1324 	enum SQLINTEGER SQL_FN_TSI_SECOND = 2;
1325 	enum SQLINTEGER SQL_FN_TSI_MINUTE = 4;
1326 	enum SQLINTEGER SQL_FN_TSI_HOUR = 8;
1327 	enum SQLINTEGER SQL_FN_TSI_DAY = 16;
1328 	enum SQLINTEGER SQL_FN_TSI_WEEK = 32;
1329 	enum SQLINTEGER SQL_FN_TSI_MONTH = 64;
1330 	enum SQLINTEGER SQL_FN_TSI_QUARTER = 128;
1331 	enum SQLINTEGER SQL_FN_TSI_YEAR = 256;
1332 	enum SQLINTEGER SQL_CA1_NEXT = 1;
1333 	enum SQLINTEGER SQL_CA1_ABSOLUTE = 2;
1334 	enum SQLINTEGER SQL_CA1_RELATIVE = 4;
1335 	enum SQLINTEGER SQL_CA1_BOOKMARK = 8;
1336 	enum SQLINTEGER SQL_CA1_LOCK_NO_CHANGE = 64;
1337 	enum SQLINTEGER SQL_CA1_LOCK_EXCLUSIVE = 128;
1338 	enum SQLINTEGER SQL_CA1_LOCK_UNLOCK = 256;
1339 	enum SQLINTEGER SQL_CA1_POS_POSITION = 512;
1340 	enum SQLINTEGER SQL_CA1_POS_UPDATE = 1024;
1341 	enum SQLINTEGER SQL_CA1_POS_DELETE = 2048;
1342 	enum SQLINTEGER SQL_CA1_POS_REFRESH = 4096;
1343 	enum SQLINTEGER SQL_CA1_POSITIONED_UPDATE = 8192;
1344 	enum SQLINTEGER SQL_CA1_POSITIONED_DELETE = 16384;
1345 	enum SQLINTEGER SQL_CA1_SELECT_FOR_UPDATE = 32768;
1346 	enum SQLINTEGER SQL_CA1_BULK_ADD = 65536;
1347 	enum SQLINTEGER SQL_CA1_BULK_UPDATE_BY_BOOKMARK = 131072;
1348 	enum SQLINTEGER SQL_CA1_BULK_DELETE_BY_BOOKMARK = 262144;
1349 	enum SQLINTEGER SQL_CA1_BULK_FETCH_BY_BOOKMARK = 524288;
1350 	enum SQLINTEGER SQL_CA2_READ_ONLY_CONCURRENCY = 1;
1351 	enum SQLINTEGER SQL_CA2_LOCK_CONCURRENCY = 2;
1352 	enum SQLINTEGER SQL_CA2_OPT_ROWVER_CONCURRENCY = 4;
1353 	enum SQLINTEGER SQL_CA2_OPT_VALUES_CONCURRENCY = 8;
1354 	enum SQLINTEGER SQL_CA2_SENSITIVITY_ADDITIONS = 16;
1355 	enum SQLINTEGER SQL_CA2_SENSITIVITY_DELETIONS = 32;
1356 	enum SQLINTEGER SQL_CA2_SENSITIVITY_UPDATES = 64;
1357 	enum SQLINTEGER SQL_CA2_MAX_ROWS_SELECT = 128;
1358 	enum SQLINTEGER SQL_CA2_MAX_ROWS_INSERT = 256;
1359 	enum SQLINTEGER SQL_CA2_MAX_ROWS_DELETE = 512;
1360 	enum SQLINTEGER SQL_CA2_MAX_ROWS_UPDATE = 1024;
1361 	enum SQLINTEGER SQL_CA2_MAX_ROWS_CATALOG = 2048;
1362 	enum SQLINTEGER SQL_CA2_CRC_EXACT = 4096;
1363 	enum SQLINTEGER SQL_CA2_CRC_APPROXIMATE = 8192;
1364 	enum SQLINTEGER SQL_CA2_SIMULATE_NON_UNIQUE = 16384;
1365 	enum SQLINTEGER SQL_CA2_SIMULATE_TRY_UNIQUE = 32768;
1366 	enum SQLINTEGER SQL_CA2_SIMULATE_UNIQUE = 65536;
1367 	enum SQLINTEGER SQL_OAC_NONE = 0;
1368 	enum SQLINTEGER SQL_OAC_LEVEL1 = 1;
1369 	enum SQLINTEGER SQL_OAC_LEVEL2 = 2;
1370 	enum SQLINTEGER SQL_OSCC_NOT_COMPLIANT = 0;
1371 	enum SQLINTEGER SQL_OSCC_COMPLIANT = 1;
1372 	enum SQLINTEGER SQL_OSC_MINIMUM = 0;
1373 	enum SQLINTEGER SQL_OSC_CORE = 1;
1374 	enum SQLINTEGER SQL_OSC_EXTENDED = 2;
1375 	enum SQLINTEGER SQL_CB_NULL = 0;
1376 	enum SQLINTEGER SQL_CB_NON_NULL = 1;
1377 	enum SQLINTEGER SQL_SO_FORWARD_ONLY = 1;
1378 	enum SQLINTEGER SQL_SO_KEYSET_DRIVEN = 2;
1379 	enum SQLINTEGER SQL_SO_DYNAMIC = 4;
1380 	enum SQLINTEGER SQL_SO_MIXED = 8;
1381 	enum SQLINTEGER SQL_SO_STATIC = 16;
1382 	enum SQLINTEGER SQL_FD_FETCH_BOOKMARK = 128;
1383 	enum SQLINTEGER SQL_CN_NONE = 0;
1384 	enum SQLINTEGER SQL_CN_DIFFERENT = 1;
1385 	enum SQLINTEGER SQL_CN_ANY = 2;
1386 	enum SQLINTEGER SQL_NNC_NULL = 0;
1387 	enum SQLINTEGER SQL_NNC_NON_NULL = 1;
1388 	enum SQLINTEGER SQL_NC_START = 2;
1389 	enum SQLINTEGER SQL_NC_END = 4;
1390 	enum SQLINTEGER SQL_FILE_NOT_SUPPORTED = 0;
1391 	enum SQLINTEGER SQL_FILE_TABLE = 1;
1392 	enum SQLINTEGER SQL_FILE_QUALIFIER = 2;
1393 	enum SQLINTEGER SQL_GD_BLOCK = 4;
1394 	enum SQLINTEGER SQL_GD_BOUND = 8;
1395 	enum SQLINTEGER SQL_GD_OUTPUT_PARAMS = 16;
1396 	enum SQLINTEGER SQL_GD_CONCURRENT = 32;
1397 	enum SQLINTEGER SQL_PS_POSITIONED_DELETE = 1;
1398 	enum SQLINTEGER SQL_PS_POSITIONED_UPDATE = 2;
1399 	enum SQLINTEGER SQL_PS_SELECT_FOR_UPDATE = 4;
1400 	enum SQLINTEGER SQL_GB_NOT_SUPPORTED = 0;
1401 	enum SQLINTEGER SQL_GB_GROUP_BY_EQUALS_SELECT = 1;
1402 	enum SQLINTEGER SQL_GB_GROUP_BY_CONTAINS_SELECT = 2;
1403 	enum SQLINTEGER SQL_GB_NO_RELATION = 3;
1404 	enum SQLINTEGER SQL_GB_COLLATE = 4;
1405 	enum SQLINTEGER SQL_OU_DML_STATEMENTS = 1;
1406 	enum SQLINTEGER SQL_OU_PROCEDURE_INVOCATION = 2;
1407 	enum SQLINTEGER SQL_OU_TABLE_DEFINITION = 4;
1408 	enum SQLINTEGER SQL_OU_INDEX_DEFINITION = 8;
1409 	enum SQLINTEGER SQL_OU_PRIVILEGE_DEFINITION = 16;
1410 	enum SQLINTEGER SQL_QU_DML_STATEMENTS = 1;
1411 	enum SQLINTEGER SQL_QU_PROCEDURE_INVOCATION = 2;
1412 	enum SQLINTEGER SQL_QU_TABLE_DEFINITION = 4;
1413 	enum SQLINTEGER SQL_QU_INDEX_DEFINITION = 8;
1414 	enum SQLINTEGER SQL_QU_PRIVILEGE_DEFINITION = 16;
1415 	enum SQLINTEGER SQL_SQ_COMPARISON = 1;
1416 	enum SQLINTEGER SQL_SQ_EXISTS = 2;
1417 	enum SQLINTEGER SQL_SQ_IN = 4;
1418 	enum SQLINTEGER SQL_SQ_QUANTIFIED = 8;
1419 	enum SQLINTEGER SQL_SQ_CORRELATED_SUBQUERIES = 16;
1420 	enum SQLINTEGER SQL_U_UNION = 1;
1421 	enum SQLINTEGER SQL_U_UNION_ALL = 2;
1422 	enum SQLINTEGER SQL_BP_CLOSE = 1;
1423 	enum SQLINTEGER SQL_BP_DELETE = 2;
1424 	enum SQLINTEGER SQL_BP_DROP = 4;
1425 	enum SQLINTEGER SQL_BP_TRANSACTION = 8;
1426 	enum SQLINTEGER SQL_BP_UPDATE = 16;
1427 	enum SQLINTEGER SQL_BP_OTHER_HSTMT = 32;
1428 	enum SQLINTEGER SQL_BP_SCROLL = 64;
1429 	enum SQLINTEGER SQL_SS_ADDITIONS = 1;
1430 	enum SQLINTEGER SQL_SS_DELETIONS = 2;
1431 	enum SQLINTEGER SQL_SS_UPDATES = 4;
1432 	enum SQLINTEGER SQL_CV_CREATE_VIEW = 1;
1433 	enum SQLINTEGER SQL_CV_CHECK_OPTION = 2;
1434 	enum SQLINTEGER SQL_CV_CASCADED = 4;
1435 	enum SQLINTEGER SQL_CV_LOCAL = 8;
1436 	enum SQLINTEGER SQL_LCK_NO_CHANGE = 1;
1437 	enum SQLINTEGER SQL_LCK_EXCLUSIVE = 2;
1438 	enum SQLINTEGER SQL_LCK_UNLOCK = 4;
1439 	enum SQLINTEGER SQL_POS_POSITION = 1;
1440 	enum SQLINTEGER SQL_POS_REFRESH = 2;
1441 	enum SQLINTEGER SQL_POS_UPDATE = 4;
1442 	enum SQLINTEGER SQL_POS_DELETE = 8;
1443 	enum SQLINTEGER SQL_POS_ADD = 16;
1444 	enum SQLINTEGER SQL_QL_START = 1;
1445 	enum SQLINTEGER SQL_QL_END = 2;
1446 	enum SQLINTEGER SQL_AF_AVG = 1;
1447 	enum SQLINTEGER SQL_AF_COUNT = 2;
1448 	enum SQLINTEGER SQL_AF_MAX = 4;
1449 	enum SQLINTEGER SQL_AF_MIN = 8;
1450 	enum SQLINTEGER SQL_AF_SUM = 16;
1451 	enum SQLINTEGER SQL_AF_DISTINCT = 32;
1452 	enum SQLINTEGER SQL_AF_ALL = 64;
1453 	enum SQLINTEGER SQL_AF_EVERY = 128;
1454 	enum SQLINTEGER SQL_AF_ANY = 256;
1455 	enum SQLINTEGER SQL_AF_STDEV_OP = 512;
1456 	enum SQLINTEGER SQL_AF_STDEV_SAMP = 1024;
1457 	enum SQLINTEGER SQL_AF_VAR_SAMP = 2048;
1458 	enum SQLINTEGER SQL_AF_VAR_POP = 4096;
1459 	enum SQLINTEGER SQL_AF_ARRAY_AGG = 8192;
1460 	enum SQLINTEGER SQL_AF_COLLECT = 16384;
1461 	enum SQLINTEGER SQL_AF_FUSION = 32768;
1462 	enum SQLINTEGER SQL_AF_INTERSECTION = 65536;
1463 	enum SQLINTEGER SQL_SC_SQL92_ENTRY = 1;
1464 	enum SQLINTEGER SQL_SC_FIPS127_2_TRANSITIONAL = 2;
1465 	enum SQLINTEGER SQL_SC_SQL92_INTERMEDIATE = 4;
1466 	enum SQLINTEGER SQL_SC_SQL92_FULL = 8;
1467 	enum SQLINTEGER SQL_DL_SQL92_DATE = 1;
1468 	enum SQLINTEGER SQL_DL_SQL92_TIME = 2;
1469 	enum SQLINTEGER SQL_DL_SQL92_TIMESTAMP = 4;
1470 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_YEAR = 8;
1471 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_MONTH = 16;
1472 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_DAY = 32;
1473 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_HOUR = 64;
1474 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_MINUTE = 128;
1475 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_SECOND = 256;
1476 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH = 512;
1477 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR = 1024;
1478 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE = 2048;
1479 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND = 4096;
1480 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE = 8192;
1481 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND = 16384;
1482 	enum SQLINTEGER SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND = 32768;
1483 	enum SQLINTEGER SQL_BRC_PROCEDURES = 1;
1484 	enum SQLINTEGER SQL_BRC_EXPLICIT = 2;
1485 	enum SQLINTEGER SQL_BRC_ROLLED_UP = 4;
1486 	enum SQLINTEGER SQL_BS_SELECT_EXPLICIT = 1;
1487 	enum SQLINTEGER SQL_BS_ROW_COUNT_EXPLICIT = 2;
1488 	enum SQLINTEGER SQL_BS_SELECT_PROC = 4;
1489 	enum SQLINTEGER SQL_BS_ROW_COUNT_PROC = 8;
1490 	enum SQLINTEGER SQL_PARC_BATCH = 1;
1491 	enum SQLINTEGER SQL_PARC_NO_BATCH = 2;
1492 	enum SQLINTEGER SQL_PAS_BATCH = 1;
1493 	enum SQLINTEGER SQL_PAS_NO_BATCH = 2;
1494 	enum SQLINTEGER SQL_PAS_NO_SELECT = 3;
1495 	enum SQLINTEGER SQL_IK_NONE = 0;
1496 	enum SQLINTEGER SQL_IK_ASC = 1;
1497 	enum SQLINTEGER SQL_IK_DESC = 2;
1498 	auto SQL_IK_ALL()()
1499 	{
1500 		return SQL_IK_ASC | SQL_IK_DESC;
1501 	}
1502 	enum SQLINTEGER SQL_ISV_ASSERTIONS = 1;
1503 	enum SQLINTEGER SQL_ISV_CHARACTER_SETS = 2;
1504 	enum SQLINTEGER SQL_ISV_CHECK_CONSTRAINTS = 4;
1505 	enum SQLINTEGER SQL_ISV_COLLATIONS = 8;
1506 	enum SQLINTEGER SQL_ISV_COLUMN_DOMAIN_USAGE = 16;
1507 	enum SQLINTEGER SQL_ISV_COLUMN_PRIVILEGES = 32;
1508 	enum SQLINTEGER SQL_ISV_COLUMNS = 64;
1509 	enum SQLINTEGER SQL_ISV_CONSTRAINT_COLUMN_USAGE = 128;
1510 	enum SQLINTEGER SQL_ISV_CONSTRAINT_TABLE_USAGE = 256;
1511 	enum SQLINTEGER SQL_ISV_DOMAIN_CONSTRAINTS = 512;
1512 	enum SQLINTEGER SQL_ISV_DOMAINS = 1024;
1513 	enum SQLINTEGER SQL_ISV_KEY_COLUMN_USAGE = 2048;
1514 	enum SQLINTEGER SQL_ISV_REFERENTIAL_CONSTRAINTS = 4096;
1515 	enum SQLINTEGER SQL_ISV_SCHEMATA = 8192;
1516 	enum SQLINTEGER SQL_ISV_SQL_LANGUAGES = 16384;
1517 	enum SQLINTEGER SQL_ISV_TABLE_CONSTRAINTS = 32768;
1518 	enum SQLINTEGER SQL_ISV_TABLE_PRIVILEGES = 65536;
1519 	enum SQLINTEGER SQL_ISV_TABLES = 131072;
1520 	enum SQLINTEGER SQL_ISV_TRANSLATIONS = 262144;
1521 	enum SQLINTEGER SQL_ISV_USAGE_PRIVILEGES = 524288;
1522 	enum SQLINTEGER SQL_ISV_VIEW_COLUMN_USAGE = 1048576;
1523 	enum SQLINTEGER SQL_ISV_VIEW_TABLE_USAGE = 2097152;
1524 	enum SQLINTEGER SQL_ISV_VIEWS = 4194304;
1525 	enum SQLINTEGER SQL_AD_CONSTRAINT_NAME_DEFINITION = 1;
1526 	enum SQLINTEGER SQL_AD_ADD_DOMAIN_CONSTRAINT = 2;
1527 	enum SQLINTEGER SQL_AD_DROP_DOMAIN_CONSTRAINT = 4;
1528 	enum SQLINTEGER SQL_AD_ADD_DOMAIN_DEFAULT = 8;
1529 	enum SQLINTEGER SQL_AD_DROP_DOMAIN_DEFAULT = 16;
1530 	enum SQLINTEGER SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED = 32;
1531 	enum SQLINTEGER SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE = 64;
1532 	enum SQLINTEGER SQL_AD_ADD_CONSTRAINT_DEFERRABLE = 128;
1533 	enum SQLINTEGER SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE = 256;
1534 	enum SQLINTEGER SQL_CS_CREATE_SCHEMA = 1;
1535 	enum SQLINTEGER SQL_CS_AUTHORIZATION = 2;
1536 	enum SQLINTEGER SQL_CS_DEFAULT_CHARACTER_SET = 4;
1537 	enum SQLINTEGER SQL_CTR_CREATE_TRANSLATION = 1;
1538 	enum SQLINTEGER SQL_CA_CREATE_ASSERTION = 1;
1539 	enum SQLINTEGER SQL_CA_CONSTRAINT_INITIALLY_DEFERRED = 16;
1540 	enum SQLINTEGER SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE = 32;
1541 	enum SQLINTEGER SQL_CA_CONSTRAINT_DEFERRABLE = 64;
1542 	enum SQLINTEGER SQL_CA_CONSTRAINT_NON_DEFERRABLE = 128;
1543 	enum SQLINTEGER SQL_CCS_CREATE_CHARACTER_SET = 1;
1544 	enum SQLINTEGER SQL_CCS_COLLATE_CLAUSE = 2;
1545 	enum SQLINTEGER SQL_CCS_LIMITED_COLLATION = 4;
1546 	enum SQLINTEGER SQL_CCOL_CREATE_COLLATION = 1;
1547 	enum SQLINTEGER SQL_CDO_CREATE_DOMAIN = 1;
1548 	enum SQLINTEGER SQL_CDO_DEFAULT = 2;
1549 	enum SQLINTEGER SQL_CDO_CONSTRAINT = 4;
1550 	enum SQLINTEGER SQL_CDO_COLLATION = 8;
1551 	enum SQLINTEGER SQL_CDO_CONSTRAINT_NAME_DEFINITION = 16;
1552 	enum SQLINTEGER SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED = 32;
1553 	enum SQLINTEGER SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE = 64;
1554 	enum SQLINTEGER SQL_CDO_CONSTRAINT_DEFERRABLE = 128;
1555 	enum SQLINTEGER SQL_CDO_CONSTRAINT_NON_DEFERRABLE = 256;
1556 	enum SQLINTEGER SQL_CT_CREATE_TABLE = 1;
1557 	enum SQLINTEGER SQL_CT_COMMIT_PRESERVE = 2;
1558 	enum SQLINTEGER SQL_CT_COMMIT_DELETE = 4;
1559 	enum SQLINTEGER SQL_CT_GLOBAL_TEMPORARY = 8;
1560 	enum SQLINTEGER SQL_CT_LOCAL_TEMPORARY = 16;
1561 	enum SQLINTEGER SQL_CT_CONSTRAINT_INITIALLY_DEFERRED = 32;
1562 	enum SQLINTEGER SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE = 64;
1563 	enum SQLINTEGER SQL_CT_CONSTRAINT_DEFERRABLE = 128;
1564 	enum SQLINTEGER SQL_CT_CONSTRAINT_NON_DEFERRABLE = 256;
1565 	enum SQLINTEGER SQL_CT_COLUMN_CONSTRAINT = 512;
1566 	enum SQLINTEGER SQL_CT_COLUMN_DEFAULT = 1024;
1567 	enum SQLINTEGER SQL_CT_COLUMN_COLLATION = 2048;
1568 	enum SQLINTEGER SQL_CT_TABLE_CONSTRAINT = 4096;
1569 	enum SQLINTEGER SQL_CT_CONSTRAINT_NAME_DEFINITION = 8192;
1570 	enum SQLINTEGER SQL_DI_CREATE_INDEX = 1;
1571 	enum SQLINTEGER SQL_DI_DROP_INDEX = 2;
1572 	enum SQLINTEGER SQL_DC_DROP_COLLATION = 1;
1573 	enum SQLINTEGER SQL_DD_DROP_DOMAIN = 1;
1574 	enum SQLINTEGER SQL_DD_RESTRICT = 2;
1575 	enum SQLINTEGER SQL_DD_CASCADE = 4;
1576 	enum SQLINTEGER SQL_DS_DROP_SCHEMA = 1;
1577 	enum SQLINTEGER SQL_DS_RESTRICT = 2;
1578 	enum SQLINTEGER SQL_DS_CASCADE = 4;
1579 	enum SQLINTEGER SQL_DCS_DROP_CHARACTER_SET = 1;
1580 	enum SQLINTEGER SQL_DA_DROP_ASSERTION = 1;
1581 	enum SQLINTEGER SQL_DT_DROP_TABLE = 1;
1582 	enum SQLINTEGER SQL_DT_RESTRICT = 2;
1583 	enum SQLINTEGER SQL_DT_CASCADE = 4;
1584 	enum SQLINTEGER SQL_DTR_DROP_TRANSLATION = 1;
1585 	enum SQLINTEGER SQL_DV_DROP_VIEW = 1;
1586 	enum SQLINTEGER SQL_DV_RESTRICT = 2;
1587 	enum SQLINTEGER SQL_DV_CASCADE = 4;
1588 	enum SQLINTEGER SQL_IS_INSERT_LITERALS = 1;
1589 	enum SQLINTEGER SQL_IS_INSERT_SEARCHED = 2;
1590 	enum SQLINTEGER SQL_IS_SELECT_INTO = 4;
1591 	enum SQLUINTEGER SQL_OIC_CORE = 1u;
1592 	enum SQLUINTEGER SQL_OIC_LEVEL1 = 2u;
1593 	enum SQLUINTEGER SQL_OIC_LEVEL2 = 3u;
1594 	enum SQLINTEGER SQL_SFKD_CASCADE = 1;
1595 	enum SQLINTEGER SQL_SFKD_NO_ACTION = 2;
1596 	enum SQLINTEGER SQL_SFKD_SET_DEFAULT = 4;
1597 	enum SQLINTEGER SQL_SFKD_SET_NULL = 8;
1598 	enum SQLINTEGER SQL_SFKU_CASCADE = 1;
1599 	enum SQLINTEGER SQL_SFKU_NO_ACTION = 2;
1600 	enum SQLINTEGER SQL_SFKU_SET_DEFAULT = 4;
1601 	enum SQLINTEGER SQL_SFKU_SET_NULL = 8;
1602 	enum SQLINTEGER SQL_SG_USAGE_ON_DOMAIN = 1;
1603 	enum SQLINTEGER SQL_SG_USAGE_ON_CHARACTER_SET = 2;
1604 	enum SQLINTEGER SQL_SG_USAGE_ON_COLLATION = 4;
1605 	enum SQLINTEGER SQL_SG_USAGE_ON_TRANSLATION = 8;
1606 	enum SQLINTEGER SQL_SG_WITH_GRANT_OPTION = 16;
1607 	enum SQLINTEGER SQL_SG_DELETE_TABLE = 32;
1608 	enum SQLINTEGER SQL_SG_INSERT_TABLE = 64;
1609 	enum SQLINTEGER SQL_SG_INSERT_COLUMN = 128;
1610 	enum SQLINTEGER SQL_SG_REFERENCES_TABLE = 256;
1611 	enum SQLINTEGER SQL_SG_REFERENCES_COLUMN = 512;
1612 	enum SQLINTEGER SQL_SG_SELECT_TABLE = 1024;
1613 	enum SQLINTEGER SQL_SG_UPDATE_TABLE = 2048;
1614 	enum SQLINTEGER SQL_SG_UPDATE_COLUMN = 4096;
1615 	enum SQLINTEGER SQL_SP_EXISTS = 1;
1616 	enum SQLINTEGER SQL_SP_ISNOTNULL = 2;
1617 	enum SQLINTEGER SQL_SP_ISNULL = 4;
1618 	enum SQLINTEGER SQL_SP_MATCH_FULL = 8;
1619 	enum SQLINTEGER SQL_SP_MATCH_PARTIAL = 16;
1620 	enum SQLINTEGER SQL_SP_MATCH_UNIQUE_FULL = 32;
1621 	enum SQLINTEGER SQL_SP_MATCH_UNIQUE_PARTIAL = 64;
1622 	enum SQLINTEGER SQL_SP_OVERLAPS = 128;
1623 	enum SQLINTEGER SQL_SP_UNIQUE = 256;
1624 	enum SQLINTEGER SQL_SP_LIKE = 512;
1625 	enum SQLINTEGER SQL_SP_IN = 1024;
1626 	enum SQLINTEGER SQL_SP_BETWEEN = 2048;
1627 	enum SQLINTEGER SQL_SP_COMPARISON = 4096;
1628 	enum SQLINTEGER SQL_SP_QUANTIFIED_COMPARISON = 8192;
1629 	enum SQLINTEGER SQL_SRJO_CORRESPONDING_CLAUSE = 1;
1630 	enum SQLINTEGER SQL_SRJO_CROSS_JOIN = 2;
1631 	enum SQLINTEGER SQL_SRJO_EXCEPT_JOIN = 4;
1632 	enum SQLINTEGER SQL_SRJO_FULL_OUTER_JOIN = 8;
1633 	enum SQLINTEGER SQL_SRJO_INNER_JOIN = 16;
1634 	enum SQLINTEGER SQL_SRJO_INTERSECT_JOIN = 32;
1635 	enum SQLINTEGER SQL_SRJO_LEFT_OUTER_JOIN = 64;
1636 	enum SQLINTEGER SQL_SRJO_NATURAL_JOIN = 128;
1637 	enum SQLINTEGER SQL_SRJO_RIGHT_OUTER_JOIN = 256;
1638 	enum SQLINTEGER SQL_SRJO_UNION_JOIN = 512;
1639 	enum SQLINTEGER SQL_SR_USAGE_ON_DOMAIN = 1;
1640 	enum SQLINTEGER SQL_SR_USAGE_ON_CHARACTER_SET = 2;
1641 	enum SQLINTEGER SQL_SR_USAGE_ON_COLLATION = 4;
1642 	enum SQLINTEGER SQL_SR_USAGE_ON_TRANSLATION = 8;
1643 	enum SQLINTEGER SQL_SR_GRANT_OPTION_FOR = 16;
1644 	enum SQLINTEGER SQL_SR_CASCADE = 32;
1645 	enum SQLINTEGER SQL_SR_RESTRICT = 64;
1646 	enum SQLINTEGER SQL_SR_DELETE_TABLE = 128;
1647 	enum SQLINTEGER SQL_SR_INSERT_TABLE = 256;
1648 	enum SQLINTEGER SQL_SR_INSERT_COLUMN = 512;
1649 	enum SQLINTEGER SQL_SR_REFERENCES_TABLE = 1024;
1650 	enum SQLINTEGER SQL_SR_REFERENCES_COLUMN = 2048;
1651 	enum SQLINTEGER SQL_SR_SELECT_TABLE = 4096;
1652 	enum SQLINTEGER SQL_SR_UPDATE_TABLE = 8192;
1653 	enum SQLINTEGER SQL_SR_UPDATE_COLUMN = 16384;
1654 	enum SQLINTEGER SQL_SRVC_VALUE_EXPRESSION = 1;
1655 	enum SQLINTEGER SQL_SRVC_NULL = 2;
1656 	enum SQLINTEGER SQL_SRVC_DEFAULT = 4;
1657 	enum SQLINTEGER SQL_SRVC_ROW_SUBQUERY = 8;
1658 	enum SQLINTEGER SQL_SVE_CASE = 1;
1659 	enum SQLINTEGER SQL_SVE_CAST = 2;
1660 	enum SQLINTEGER SQL_SVE_COALESCE = 4;
1661 	enum SQLINTEGER SQL_SVE_NULLIF = 8;
1662 	enum SQLINTEGER SQL_SCC_XOPEN_CLI_VERSION1 = 1;
1663 	enum SQLINTEGER SQL_SCC_ISO92_CLI = 2;
1664 	enum SQLINTEGER SQL_DRIVER_AWARE_POOLING_NOT_CAPABLE = 0;
1665 	enum SQLINTEGER SQL_DRIVER_AWARE_POOLING_CAPABLE = 1;
1666 	enum SQLINTEGER SQL_DTC_ENLIST_EXPENSIVE = 1;
1667 	enum SQLINTEGER SQL_DTC_UNENLIST_EXPENSIVE = 2;
1668 	enum SQLINTEGER SQL_ASYNC_DBC_NOT_CAPABLE = 0;
1669 	enum SQLINTEGER SQL_ASYNC_DBC_CAPABLE = 1;
1670 	enum SQLINTEGER SQL_LC_NONE = 0;
1671 	enum SQLINTEGER SQL_LC_TAKE = 1;
1672 	enum SQLINTEGER SQL_LC_SKIP = 3;
1673 	enum SQLINTEGER SQL_RC_NONE = 0;
1674 	enum SQLINTEGER SQL_RC_INSERT_SINGLE_ROWID = 1;
1675 	auto SQL_RC_INSERT_SINGLE_ANY()()
1676 	{
1677 		return 2 | SQL_RC_INSERT_SINGLE_ROWID;
1678 	}
1679 	auto SQL_RC_INSERT_MULTIPLE_ROWID()()
1680 	{
1681 		return 4 | SQL_RC_INSERT_SINGLE_ROWID;
1682 	}
1683 	auto SQL_RC_INSERT_MULTIPLE_ANY()()
1684 	{
1685 		return 8 | SQL_RC_INSERT_MULTIPLE_ROWID | SQL_RC_INSERT_SINGLE_ANY;
1686 	}
1687 	enum SQLINTEGER SQL_RC_INSERT_SELECT_ROWID = 16;
1688 	auto SQL_RC_INSERT_SELECT_ANY()()
1689 	{
1690 		return 32 | SQL_RC_INSERT_SELECT_ROWID;
1691 	}
1692 	enum SQLINTEGER SQL_RC_UPDATE_ROWID = 64;
1693 	auto SQL_RC_UPDATE_ANY()()
1694 	{
1695 		return 128 | SQL_RC_UPDATE_ROWID;
1696 	}
1697 	enum SQLINTEGER SQL_RC_DELETE_ROWID = 256;
1698 	auto SQL_RC_DELETE_ANY()()
1699 	{
1700 		return 512 | SQL_RC_DELETE_ROWID;
1701 	}
1702 	enum SQLINTEGER SQL_RC_SELECT_INTO_ROWID = 1024;
1703 	auto SQL_RC_SELECT_INTO_ANY()()
1704 	{
1705 		return 2048 | SQL_RC_SELECT_INTO_ROWID;
1706 	}
1707 	enum SQLINTEGER SQL_FC_NONE = 0;
1708 	enum SQLINTEGER SQL_FC_JSON = 1;
1709 	enum SQLINTEGER SQL_FC_JSON_BINARY = 2;
1710 	enum SQLINTEGER SQL_FETCH_FIRST_USER = 31;
1711 	enum SQLINTEGER SQL_FETCH_FIRST_SYSTEM = 32;
1712 	enum SQLINTEGER SQL_ENTIRE_ROWSET = 0;
1713 	enum SQLINTEGER SQL_POSITION = 0;
1714 	enum SQLINTEGER SQL_REFRESH = 1;
1715 	enum SQLINTEGER SQL_UPDATE = 2;
1716 	enum SQLINTEGER SQL_DELETE = 3;
1717 	enum SQLINTEGER SQL_ADD = 4;
1718 	enum SQLINTEGER SQL_UPDATE_BY_BOOKMARK = 5;
1719 	enum SQLINTEGER SQL_DELETE_BY_BOOKMARK = 6;
1720 	enum SQLINTEGER SQL_FETCH_BY_BOOKMARK = 7;
1721 	enum SQLINTEGER SQL_LOCK_NO_CHANGE = 0;
1722 	enum SQLINTEGER SQL_LOCK_EXCLUSIVE = 1;
1723 	enum SQLINTEGER SQL_LOCK_UNLOCK = 2;
1724 	auto SQL_POSITION_TO(__MP4, __MP5)(__MP4 hstmt, __MP5 irow)
1725 	{
1726 		return SQLSetPos(hstmt, irow, SQL_POSITION, SQL_LOCK_NO_CHANGE);
1727 	}
1728 	auto SQL_LOCK_RECORD(__MP6, __MP7, __MP8)(__MP6 hstmt, __MP7 irow, __MP8 fLock)
1729 	{
1730 		return SQLSetPos(hstmt, irow, SQL_POSITION, fLock);
1731 	}
1732 	auto SQL_REFRESH_RECORD(__MP9, __MP10, __MP11)(__MP9 hstmt, __MP10 irow, __MP11 fLock)
1733 	{
1734 		return SQLSetPos(hstmt, irow, SQL_REFRESH, fLock);
1735 	}
1736 	auto SQL_UPDATE_RECORD(__MP12, __MP13)(__MP12 hstmt, __MP13 irow)
1737 	{
1738 		return SQLSetPos(hstmt, irow, SQL_UPDATE, SQL_LOCK_NO_CHANGE);
1739 	}
1740 	auto SQL_DELETE_RECORD(__MP14, __MP15)(__MP14 hstmt, __MP15 irow)
1741 	{
1742 		return SQLSetPos(hstmt, irow, SQL_DELETE, SQL_LOCK_NO_CHANGE);
1743 	}
1744 	auto SQL_ADD_RECORD(__MP16, __MP17)(__MP16 hstmt, __MP17 irow)
1745 	{
1746 		return SQLSetPos(hstmt, irow, SQL_ADD, SQL_LOCK_NO_CHANGE);
1747 	}
1748 	enum SQLINTEGER SQL_BEST_ROWID = 1;
1749 	enum SQLINTEGER SQL_ROWVER = 2;
1750 	enum SQLINTEGER SQL_PC_NOT_PSEUDO = 1;
1751 	enum SQLINTEGER SQL_QUICK = 0;
1752 	enum SQLINTEGER SQL_ENSURE = 1;
1753 	enum SQLINTEGER SQL_TABLE_STAT = 0;
1754 	enum SQL_ALL_CATALOGS = "%";
1755 	enum SQL_ALL_SCHEMAS = "%";
1756 	enum SQL_ALL_TABLE_TYPES = "%";
1757 	enum SQLINTEGER SQL_DRIVER_NOPROMPT = 0;
1758 	enum SQLINTEGER SQL_DRIVER_COMPLETE = 1;
1759 	enum SQLINTEGER SQL_DRIVER_PROMPT = 2;
1760 	enum SQLINTEGER SQL_DRIVER_COMPLETE_REQUIRED = 3;
1761 	enum SQLINTEGER SQL_FETCH_BOOKMARK = 8;
1762 	enum SQLINTEGER SQL_ROW_SUCCESS = 0;
1763 	enum SQLINTEGER SQL_ROW_DELETED = 1;
1764 	enum SQLINTEGER SQL_ROW_UPDATED = 2;
1765 	enum SQLINTEGER SQL_ROW_NOROW = 3;
1766 	enum SQLINTEGER SQL_ROW_ADDED = 4;
1767 	enum SQLINTEGER SQL_ROW_ERROR = 5;
1768 	enum SQLINTEGER SQL_ROW_SUCCESS_WITH_INFO = 6;
1769 	enum SQLINTEGER SQL_ROW_PROCEED = 0;
1770 	enum SQLINTEGER SQL_ROW_IGNORE = 1;
1771 	enum SQLINTEGER SQL_PARAM_SUCCESS = 0;
1772 	enum SQLINTEGER SQL_PARAM_SUCCESS_WITH_INFO = 6;
1773 	enum SQLINTEGER SQL_PARAM_ERROR = 5;
1774 	enum SQLINTEGER SQL_PARAM_UNUSED = 7;
1775 	enum SQLINTEGER SQL_PARAM_DIAG_UNAVAILABLE = 1;
1776 	enum SQLINTEGER SQL_PARAM_PROCEED = 0;
1777 	enum SQLINTEGER SQL_PARAM_IGNORE = 1;
1778 	enum SQLINTEGER SQL_CASCADE = 0;
1779 	enum SQLINTEGER SQL_RESTRICT = 1;
1780 	enum SQLINTEGER SQL_SET_NULL = 2;
1781 	enum SQLINTEGER SQL_NO_ACTION = 3;
1782 	enum SQLINTEGER SQL_SET_DEFAULT = 4;
1783 	enum SQLINTEGER SQL_INITIALLY_DEFERRED = 5;
1784 	enum SQLINTEGER SQL_INITIALLY_IMMEDIATE = 6;
1785 	enum SQLINTEGER SQL_NOT_DEFERRABLE = 7;
1786 	enum SQLINTEGER SQL_PARAM_TYPE_UNKNOWN = 0;
1787 	enum SQLINTEGER SQL_PARAM_INPUT = 1;
1788 	enum SQLINTEGER SQL_PARAM_INPUT_OUTPUT = 2;
1789 	enum SQLINTEGER SQL_RESULT_COL = 3;
1790 	enum SQLINTEGER SQL_PARAM_OUTPUT = 4;
1791 	enum SQLINTEGER SQL_RETURN_VALUE = 5;
1792 	enum SQLINTEGER SQL_PARAM_INPUT_OUTPUT_STREAM = 8;
1793 	enum SQLINTEGER SQL_PARAM_OUTPUT_STREAM = 16;
1794 	enum SQLINTEGER SQL_PT_UNKNOWN = 0;
1795 	enum SQLINTEGER SQL_PT_PROCEDURE = 1;
1796 	enum SQLINTEGER SQL_PT_FUNCTION = 2;
1797 	auto SQL_WCHAR()()
1798 	{
1799 		return -8;
1800 	}
1801 	auto SQL_WVARCHAR()()
1802 	{
1803 		return -9;
1804 	}
1805 	auto SQL_WLONGVARCHAR()()
1806 	{
1807 		return -10;
1808 	}
1809 	enum SQLINTEGER SQL_SQLSTATE_SIZEW = 10;
1810 }